• Tidak ada hasil yang ditemukan

Pengamanan Pintu Menggunakan RFID dan Pengontrolan Listrik Ruangan Teknik Informatika UPN “VETERAN” Jawa Timur.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Pengamanan Pintu Menggunakan RFID dan Pengontrolan Listrik Ruangan Teknik Informatika UPN “VETERAN” Jawa Timur."

Copied!
106
0
0

Teks penuh

(1)

Pembimbing II : Fetty Try A., S. Kom, Penyusun : Firman Fachrudin

ABSTRAKSI

Pada rungan Teknik Informatika UPN “Veteran” Jawa Timur, perangkat penguncian pintu dan listrik masih dikontrol secara manual. Sehingga karyawan harus disibukkan dengan rutinitas peminjaman kunci analog pada Dikjar. Kerapkali tidak dapat diketahui pengguna ruang pada jam dan hari tertentu. Serta kelalaian pengguna saat pemakaian telah berakhir lupa dalam mematikan perangkat listrik yang terdapat pada ruangan. Hal ini menyebabkan pemakaian listrik tidak efisien. Untuk menyelesaikan masalah dalam penguncian pintu dan pengontrolan listrik ruangan, yaitu membuat perangkat keras dan aplikasi yang dapat mengunci pintu dan mengontrol listrik secara otomatis sesuai setting ruang dan terpusat dengan menggunakan bahasa pemrogrman Visual Basic 6.0. Dimana ruangan hanya dapat dibuka oleh karyawan yang telah memiliki kartu identitas dan perijinan berupa kartu RFID dan pengamanan sandi. Sebagai pengontrol listrik dibutuhkan mikrokontroler AT89S52 yang telah diisi program menggunakan pemrograman BASCOM-8051, untuk komunikasi data antara

mikrokontroler dengan komputer dibutuhkan kabel converter RS 232 to USB. Dengan pengujian pada perangkat keras dan aplikasi yang telah dilakukan

didapatkan bahwa aplikasi ini mampu untuk mengunci pintu suatu ruangan dengan kartu RFID dan mengontrol listrik untuk efisiensi penggunaan listrik sesuai setting penggunaan, sehingga karyawan tidak perlu disibukkan lagi dengan kegiatan menuju Dikjar untuk melakukan peminjaman kunci dan mematikan listrik saat ruang tidak digunakan. Sehingga dapat disimpulkan bahwa aplikasi dapat berfungsi dengan baik dan output sesuai dengan apa yang diharapkan dan sesuai dengan tujuan awal penelitian dan perancangan aplikasi ini.

(2)

Dengan mengucapkan puji dan syukur kehadirat Tuhan Yang Maha Esa atas

segala rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan tugas akhir yang

merupakan persyaratan untuk menyelesaikan program Strata Satu (S1) di Universitas

Pembangunan Nasional “VETERAN” Jawa Timur., dengan mengambil judul

Pengamanan Pintu Menggunakan RFID dan Pengontrolan Listrik Pada Ruang

Teknik Infor matika UPN “VETERAN” J awa Timur.

Penulis mengucapkan terima kasih yang sebesar-besarnya kepada pihak-pihak

yang telah membantu baik materiil maupun dorongan spirituil untuk menyelesaikan

penulisan tugas akhir ini, terutama kepada:

1.

Mama dan Papa penulis ( Wini Artianni dan Utoyo Effendi ) serta seluruh keluarga

yang tiada henti hentinya memberikan semangat dan dukungan demi

terselesaikannya tugas akhir ini.

2.

Bapak Ir. Sutiyono, MT selaku dekan FTI, UPN “Veteran”Jawa Timur.

3.

Ibu Dr. Ir. Ni Ketut Sari, MT selaku ketua jurusan Teknik Informatika, FTI, UPN

“Veteran” Jawa Timur

4.

Bapak Basuki Rahmat, S.Si., MT selaku dosen pembimbing 1 tugas akhir penulis

yang selalu memberikan ide dalam pengerjaan mikrokontroller penulis.

5.

Fetty Tri A, S. Kom selaku dosen pembimbing 2 tugas akhir penulis dimana tidak

selalu membimbing penulis dalam hal laporan.

6.

Seluruh Dosen Teknik Informatika UPN atas kesediaan membagi ilmunya kepada

(3)

ilham judul ini.

8.

Teman-temanku seperjuangan dan sependeritaan terutama angkatan 2005, terima

kasih atas segala bantuannya selama menjadi mahasiswa.

9.

Semua pihak yang tidak dapat penulis sebutkan satu per satu yang terlibat baik

secara langsung maupun tidak langsung demi terselesaikannya tugas akhir ini.

Penulis menyadari sepenuhnya masih banyak terdapat kekurangan dalam

penulisan Tugas Akhir ini. Oleh sebab itu kritik serta saran yang membangun dari

pembaca sangat membantu guna perbaikan dan pengembangan di masa yang akan

datang.

Akhirnya dengan ridho Tuhan YME penulis berharap semoga laporan Tugas

Akhir ini dapat memberikan manfaat bagi pembaca sekalian terutama mahasiswa di

bidang teknik komputer dan informatika.

Surabaya, 11 Juni 2011

(4)

ABSTRAK ... i

KATA PENGANTAR ... ii

DAFTAR ISI ... iv

DAFTAR GAMBAR... ix

DAFTAR TABEL ... xii

BAB I PENDAHULUAN ... 1

1.1 Latar Belakang Masalah ... 1

1.2 Perumusan Masalah ... 2

1.3 Batasan Masalah ... 3

1.4 Tujuan ... 3

1.5 Manfaat ... 4

1.6 Metodelogi Penelitian ... 4

1.7 Sistematika Penelitian ... 6

BAB II TINJ AUAN PUSTAKA ... 8

2.1 Sejarah Singkat Mengenai Teknik Informatika UPN ”Veteran” Jawa Timur ... 8

2.2 Definisi Mikrokontroler ... 10

2.2.1 Perbedaan Antara MCS-51 versi C dan S ... 11

2.2.2 Bahasa Pemprograman Mikrokontroler ... 11

2.3 Mikrokontroler AT89s52 ... 12

2.3.1 Struktur Mikrokontroller AT89s52 ... 13

2.3.2 Data Memori (EEPROM) dan RAM ... 13

2.3.3 Konfigurasi Kaki Mikrokontroller AT89S ... 14

(5)

2.4.3 Compiler Penerjemah ... 21

2.4.4 Program BASCOM 8051 ... 22

2.4.5 Karakter dalam BASCOM 8051 ... 23

2.4.6 Tipe Data ... 23

2.4.6.1 Variabel... 24

2.4.6.2 Alias ... 25

2.4.6.3 Konstanta ... 25

2.4.6.4 Array ... 26

2.4.7 Operasi-operasi dalam BASCOM 8051 ... 27

2.4.8 Kontrol Program ... 28

2.4.8.1 If...Then ... 29

2.4.8.2 Select...Case ... 29

2.4.8.3 While...End ... 30

2.4.8.4 Do...Loop ... 30

2.4.8.5 For...Next ... 30

2.4.8.6 Exit ... 31

2.4.8.7 Gosub ... 31

2.4.8.8 Goto ... 32

2.5 Pemodelan Data ... 32

2.5.1 Entity Relationship Diagram (ERD) ... 32

2.5.2 Entitas dan Attribut ... 32

(6)

2.7.1 Program Database MySQL ... 36

2.8 Visual Basic 6.0 ... 38

2.9 Flowchart ... 39

2.10 Unified Modelling Language (UML) ... 40

2.10.1 Konsep Dasar UML ... 41

2.10.2 Use Case Diagram ... 42

2.10.3 Class Diagram ... 44

2.10.4 Statechart Diagram ... 46

2.10.5 Activity Diagram ... 47

2.10.6 Squence Diagram ... 49

2.10.7 Collaboration Diagram ... 50

BAB III ANALISA DAN PERANCANGAN SISTEM ... 51

3.1 Analisa Sistem ... 51

3.2 Perancangan UML ... 52

3.2.1 UML ( Unified Modelling Language ) ... 53

3.2.1.1 Use case Diagram. ... 53

3.2.1.2 Activity Diagram. ... 54

3.3 Perancangan Database ... 3.3.1 Entity Relationship Diagram ... 63

3.3.1.1 Conceptual Data Model ( CDM ) ... 63

(7)

3.4.1 Perancangan Mikrokontroller AT89s52 ... 69

3.4.2 Flow Chart Perangkat keras ... 70

3.4.3 Perancangan Perangkat RFID dn Mikrokontroller 72

3.5 Perancangan Maket... 72

3.6 Perancangan Antarmuka ... 73

BAB IV IMPLEMENTASI SITEM. ... 76

4.1 Perangkat Pengamanan Pintu dan Pengontrolan Listrik ... 76

4.2 Maket Ruang ... 76

4.3 Transfer Aplikasi Pada Mikrokontroller ... 77

4.4 Aplikasi monitoring Penggunaan Ruang ... 79

4.4.1 Sub Menu Pengguna Ruang ... 79

4.4.2 Sub Menu Perijinan ... 80

4.4.3 Sub Menu Setting Ruang... 80

BAB V UJ I COBA DAN EVALUASI. ... 83

5.1 Pengujian Perangkat Keras ... 83

5.1.1 Pengujian Mikrokontroller AT89s52 ... 83

5.1.2 Pengujian RFID ... 84

5.1.3 Pengujian Maket... 84

5.2 Pengujian Aplikasi Monitoring ... 85

(8)

5.2.4 Laporan Penggunaan Ruang ... 87

BAB VI KESIMPULAN DAN SARAN. ... 92

6.1 Kesimpulan ... 92

6.2 Saran ... 92

(9)

Gambar 2.1 Gedung Teknik Informatika UPN “Veteran” Jawa Timur ... 9

Gambar 2.2 Alur Listrik Ruang ... 9

Gambar 2.3 Diagram Blok AT89s52 ... 12

Gambar 2.4 Alamat RAM Internal dan Flash EEPROM ... 12

Gambar 2.5 Konfigurasi Kaki AT89s52 ... 14

Gambar 2.6 Jendela program BASCOM ... 17

Gambar 2.7 Jendela program simulasi ... 19

Gambar 2.8 Tombol-tombol interruppt... 19

Gambar 2.9 Jendela Simulasi LCD ... 20

Gambar 2.10 Jendela option ... 21

Gambar 2.11 Simbol-simbol Program FlowChart ... 39

Gambar 2.12 Proses Detail FlowChart ... 40

Gambar 2.13 Contoh Use Case Diagram ... 43

Gambar 2.14 Public Dalam Class ... 44

Gambar 2.15 Run-time Dalam Class ... 45

Gambar 2.16 Package Dalam Class ... 45

Gambar 2.17 Contoh Class Diagram ... 46

Gambar 2.18 Contoh Statechart Diagram ... 47

Gambar 2.19 Contoh Activity Diagram ... 48

Gambar 2.20 Contoh Squence Diagram ... 49

Gambar 2.21 Contoh Collaboration Diagram ... 50

(10)

Gambar 3.4 Activity Diagram Ubah Sandi Operator ... 55

Gambar 3.5 Activity Diagram Menambah Operator ... 56

Gambar 3.6 Activity Diagram Merubah Operator ... 57

Gambar 3.7 Activity Diagram Menambah Pengguna ... 58

Gambar 3.8 Activity Diagram Merubah Pengguna ... 59

Gambar 3.9 Diagram Kartu Baru Pengguna ... 60

Gambar 3.10 Activity Diagram Menambah ... 60

Gambar 3.11 Activity Diagram Merubah ... 61

Gambar 3.12 Activity Diagram Kehilangan Kartu... 61

Gambar 3.13 Activity Diagram Hapus Perijinan ... 62

Gambar 3.14 Conceptual Data Model ( CDM ) ... 63

Gambar 3.15 Physical Data Model ( PDM ) ... 64

Gambar 3.16 Skema Rangkaian Mikrokontroler AT89S52 ... 69

Gambar 3.17.1 Flow Chart Penggunaan Tombol ... 70

Gambar 3.17.2 Flow Chart Mikrokontroller ... 71

Gambar 3.18 Perancangan Rangkaian Alat ... 72

Gambar 3.19 Perancangan Maket ... 72

Gambar 3.20 Perancangan Antarmuka Form Login ... 73

Gambar 3.21 Perancangan Antarmuka Form Awal ... 74

Gambar 3.22 Perancangan Antarmuka Form Ubah Sandi Operator ... 74

Gambar 3.23 Perancangan Antarmuka Form Operator ... 75

(11)

Gambar 4.3 Software ISP- Flash Programmer... 78

Gambar 4.4 Mikrokontroler Belum Terhubung ... 78

Gambar 4.5 Mikrokontroler Telah Terhubung ... 78

Gambar 4.6 Program Masuk Pada Mikrokontroler ... 79

Gambar 4.7 Form Pengguna Ruang ... 79

Gambar 4.8 Form Perijinan ... 80

Gambar 4.9 Form Setting Ruang ... 81

Gambar 5.1 Form Pengguna Ruang ... 85

Gambar 5.2 Form Perijinan ... 86

Gambar 5.3 Form Pengaturan Ruang ... 87

Gambar 5.4 Form Laporan Penggunaan Ruang ... 87

Gambar 5.5 Bentuk Laporan Penggunaan Ruang ... 88

Gambar 5.6 Bentuk Laporan Detail Perijinan ... 88

Gambar 5.7 Bentuk Laporan Perijinan Tidak Mengembalikan Kartu ... 89

Gambar 5.8 Tampilan Bila Kartu Tidak Sesuai ... 89

Gambar 5.9 Tampilan Bila Kartu Sesuai ... 90

Gambar 5.10 Bila menekan * dan memiliki sandi ... 90

(12)

Tabel 2.1 Daftar Fungsi Menu BASCOM-8051 ... 18

Tabel 2.2 Info Show Result ... 18

Tabel 2.3 Keterangan Menu Pilihan ... 21

Tabel 2.4 Tabel Alokasi Port untuk LCD... 22

Tabel 2.5 Karakter Special ... 23

Tabel 2.6 Tipe Data BASCOM ... 23

Tabel 2.7 Tabel Operator Relasi ... 27

Tabel 2.8 Bentuk Notasi dalam Power Designer ... 34

Tabel 2.9 Konsepsi Dasar UML ... 41

Tabel 3.1 Struktur Tabel Operator ... 65

Tabel 3.2 Struktur Tabel Ruang ... 65

Tabel 3.3 Struktur Tabel Pengguna ... 66

Tabel 3.4 Struktur Tabel Perijinan ... 66

Tabel 3.5 Struktur Tabel Perijinan ... 67

Tabel 3.6 Struktur Tabel Penggunaan_ruang ... 67

(13)

BAB I

PENDAHULUAN

1.1 Latar Belaka ng

Perkembangan ilmu teknologi yang pesat beberapa tahun belakangan ini

telah memacu kreatifitas umat manusia, khususnya pada perkembangan teknologi

perangkat kontrol. Hal ini terlihat dengan adanya berbagai penemuan dan

pengembangan baik pada piranti keras (hardware) maupun pada piranti lunak

(software). Meningkatnya teknologi serta penemuan ini juga berpengaruh

terhadap kebutuhan akan segi keamanan baru. Hal ini dibutuhkan karena

menyangkut keselamatan, kekayaan, keamanan, kerahasian dan hal lainnya.

Instansi seperti pada dunia pendidikan salah satunya di UPN “VETERAN”

JAWA TIMUR, pastinya memiliki ruangan yang tidak semua orang untuk bebas

masuk. Seperti ruangan kuliah, himpunan, server dan dosen tidak dapat dibuka

tanpa adanya kunci analog. Namun dalam prakteknya tidak dapat

dipertanggungjawabkan karena tidak diketahui pengguna secara terperinci bila

terjadi penyelewengan, kehilangan, penyusupan dan hal lainnya. Selain itu

ruangan yang benar-benar tidak dikhususkan menggunakan listrik selama 24 jam

penuh seperti ruangan server yang harus memerlukan listrik secara penuh untuk

menjalankannya, mengalami pemborosan dikarenakan adanya penggunaan listrik

berlebihan baik lalai maupun disengaja karena tidak adanya pengontrolan listrik.

Untuk menjaga hal tersebut maka dibutuhkan suatu sistem pengamanan

yang baik guna mencegah terjadinya penyusupan pada ruangan. Dikarenakan

(14)

ruang. Agar memenuhi hal tersebut dapat digunakan pengamanan berupa kartu

pengenal yang unik dan berbeda antara satu dengan yang lain dan dikombinasikan

dengan angka sandi bila diinginkan, sehingga hanya orang-orang tertentu saja

yang dapat mengakses ruangan tersebut dan tidak dapat disamakan dengan yang

lain. Untuk penggunaan listrik pada ruangan yang tidak membutuhkan secara

penuh dapat langsung dipadamkan ketika ruang tidak lagi digunakan. Sedangkan

ruangan yang masih membutuhkan listruk dapat tetap diaktifkan walaupun

ruangan tidak digunakan.

Dengan menggunakan RFID maka pengguna ruang dapat dibedakan

karena memiliki microchip unik antara pegguna satu dengan yang lain serta dapat

dikombinasikan dengan angka sandi bila menginginkan keamanan lebih. Saat

kartu RFID digunakan maka dapat menyimpan pada database siapa pemilik kartu

sebagai penanggungjawab pengguna ruang. Sedangkan dengan mikrokontroller

dapat mengatasi pemadaman listrik sesuai pengaturan penggunaan listrik ruangan.

1.2 Per umusan Masalah

Atas dasar latar belakang diatas, maka tugas akhir ini mempunyai

perumusan masalah sebagai berikut :

a. Bagaimana mengunci dan membuka pintu ruangan menggunakan kartu

pengenal dan angka sandi bila diinginkan, kemudian menyimpan pengguna

kartu sebagai penanggungjawab pembuka ruang.

b. Bagaimana mengontrol pemadaman penggunaan listrik saat ruang tidak

(15)

1.3 Batasan Masalah

Dalam pengerjaan tugas akhir ini, untuk mengatasi permasalahan yang ada

maka penyusun membatasi permasalahan sebagai berikut :

a. Untuk pengguna yang kehilangan kartu dapat melakukan pembuatan kartu

baru.

b. Bila tidak memiliki kartu dapat memohon perijinan dari operator dan

meminjam kartu penggunaan ruang

c. Untuk windows socket digunakan penggantian simulasi perangkat keras

berupa personal computer.

d. Pengenal kartu menggunakan perangkat RFID (Radio Frequency

Identification).

e. Untuk pengamanan pembuka pintu dan pengendalian listrik menggunakan

rangkaian mikrokontroller AT89s52.

f. Database menggunakan My SQL sebagai media menyimpan data.

g. Aplikasi monitoring menggunakan Visual Basic 6 dimana aplikasi ini berbasis

windows.

h. Untuk peragaan perangkat keras RFID, mikrokontroller AT89S52 dan aplikasi

monitoring tentang tugas akhir ini penulis menggunakan penjelasan secara

lesan dan tertulis.

1.4 Tujuan

Tujuan dari tugas akhir ini adalah meningkatkan mutu, kwalitas,

(16)

”VETERAN” JAWA TIMUR dengan menggunakan pengamanan RFID dan

pengontrolan listrik untuk efisiensi penggunaannya pada ruang di Gedung Teknik

Informatika UPN ”VETERAN” Jawa Timur.

1.5 Manfaat

Manfaat yang dapat diraih dari pembuatan tugas akhir ini antara lain :

a. Dapat memonitoring penggunaan ruang secara terperinci.

b. Penggunaan ruang dapat dipertanggung jawabkan karena dapat diketahui

pengguna ruang.

c. Memberikan pengamanan lebih pada ruangan karena menggunakan kartu

RFID.

d. Memadamkan listrik pada ruang secara otomatos saat tidak difungsikan.

e. Memberikan efisiensi penggunaan listrik pada ruang karena dapat dikontrol

berdasarkan penggunaan ruang.

1.6 Metodologi Penelitian

Dalam pembuatan Tugas Akhir ini, akan digunakan beberapa metode.

Antara lain :

a. Survei

Dilakukan dengan mengumpulkan segala macam informasi secara riset

kepustakaan, mempelajari buku yang berhubungan dengan masalah yang akan

dihadapi, dan melakukan wawancara baik lesan maupun tertulis terhadap

(17)

Fakultas Teknik Industri Universitas Pembangunan Nasional “VETERAN”

Jawa Timur untuk mendapatkan informasi dan data yang berhubungan dengan

tugas akhir ini.

b. Analisa

Menganalisa beberapa data yang diperlukan saat penggunaan ruang pada

metode kunci analog sebelumnya untuk pengerjaan dan menyempurnakan

sistem ini.

c. Perancangan Sistem

Menjelaskan tahap-tahap yang dilakukan mulai dari identifikasi permasalahan

sampai menghasilkan desain perancangan hardware, input, output dari sistem

yang akan dibuat.

d. Pengerjaan Perangkat Keras dan Program

Melakukan implementasi terhadap sistem berdasarkan hasil dari perancangan

sistem baik perangkat keras maupun perangkat lunak yang sesuai dengan

kebutuhan.

e. Uji Coba Perangkat Keras dan Program

Uji coba program dapat dilakukan pada akhir dari tahap-tahap analisa sistem

dan setelah selesainya pengerjaan perangkat keras dan program, desain sistem

dan tahap penerapan sistem atau implementasi sistem. Sasaran uji coba

program adalah untuk menemukan kesalahan-kesalahan dari perangkat keras

dan program yang mungkin terjadi baik kesalahan sistem ataupun manusia

sehingga dapat dilakukan perbaikan.

(18)

Dalam bagian akhir skripsi ini akan dibuat kesimpulan dan saran dari hasil

pembuatan sistem yang diperoleh sesuai dengan dasar teori yang mendukung

dalam pembuatan sistem tersebut yang telah dikerjakan secara keseluruhan

dan dilakukannya ujicoba sistem.

1.7 Sistematika Penulisan.

Pada penulisan laporan tugas akhir ini terdiri dari beberapa bab yang

disusun dengan sistematika penulisan sebagai berikut:

BAB I PENDAHULUAN

Bab ini berisikan Latar Belakang, Rumusan Masalah, Batasan Masalah,

Tujuan Penelitian, Manfaat Perancangan Sistem, Metode penulisan, Sistematika

Penulisan.

BAB II TINJ AUAN PUSTAKA

Bab ini menjelaskan tentang dasar teori untuk pemecahan masalah yang

berhubungan dan digunakan untuk mendukung dalam pembuatan tugas akhir ini.

BAB III ANALISA DAN PERANCANGAN SISTEM

Bab ini menjelaskan tentang metode yang digunakan dalam aplikasi

Pengamanan Pintu Menggunakan RFID Dan Pengontrolan Listrik Pada Ruang

Teknik Informatika UPN “Veteran” Jawa Timur.

BAB IV IMPLEMENTASI SISTEM

Bab ini menjelaskan tentang hasil dan pembahasan mengenai analisa

prosedur kerja pada penyusunan laporan tugas akhir baik hardware dan aplikasi

Pengamanan Pintu Menggunakan RFID Dan Pengontrolan Listrik Pada Ruang

Teknik Informatika UPN “Veteran” Jawa Timur.

(19)

Pada bab ini menjelaskan tentang pelaksanaan uji coba dari hardware dan

program yang dibuat dan akan dilakukan pengimplementasian pada maket untuk

menguji keberhasilan layaknya pada ruang yang sesungguhnya. Uji coba program

dapat dilakukan pada akhir tahap implementasi. Sasaran dari ujicoba program

adalah untuk menemukan kesalahan dari program yang mungkin terjadi sehingga

dapat segera dilakukan diperbaikan.

BAB VI PENUTUP

Bab ini berisi kesimpulan dari sistem pengontrolan yang telah dibuat dan

(20)

BAB II

TINJ AUAN PUSTAKA

2.1 Sejar ah Singkat Mengenai Teknik Infor matika UPN “Veter an” J awa

Timur

Jurusan Teknik Informatika Fakultas Teknologi Industri UPN "Veteran"

Jawa Timur didirikan dan diresmikan pada tahun akademik 2003. Tujuan

pendidikan Teknik Informatika adalah untuk menghasilkan Sarjana dalam bidang

komputer yang unggul dan mempunyai pengetahuan dasar dan keahlian yang luas

dalam bidang Teknologi Informasi, khususnya bidang Piranti Lunak (Software)

dan Perangkat Keras (Hardware).

Sejak tahun akademik 2004/2005, Jurusan Teknik Informatika yang

semula hanya memiliki 1 (satu) bidang minat Teknik Informatika, berkembang

menjadi 2 (dua) program studi baru yaitu Teknik Informatika, Sistem

Informasi. Program Studi Teknik Informatika hingga saat ini diampu oleh lebih

dari 40 orang staf Dosen dengan jumlah mahasiswa lebih dari 1340 orang. Jurusan

teknik informatika sendiri mempunyai gedung dengan 3 lantai yang terdiri dari, 8

ruang kelas, 2 ruang dosen, 1 ruang kajur dan sekjur, 3 ruang komunitas, 2 ruang

himpunan, 1 ruang dikjar dan 5 laboratorium dan semua ruangannya ber-AC.

Gedung teknik informatika ini mempunyai nama dari bahasa sansekerta yaitu Giri

Santika. Dimana secara garis besar setiap ruang memiliki 2 jalur kebel listrik yaitu

untuk listrik ruang (lampu, proyektor, komputer, dll) dan untuk AC (Air

(21)

Berikut adalah gambar gedung Teknik Informatika UPN “Veteran” Jawa Timur:

Gambar 2.1 Gedung Teknik Informatika UPN “Veteran” Jawa Timur

Berikut adalah Alur Listrik Ruang Teknik Informatika UPN “Veteran” Jawa

Timur:

(22)

2.2 Definisi Mik rokontr oler

Mikrokontroler adalah sebuah sistem komputer yang seluruh atau sebagian

besar elemennya dikemas dalam satu chip IC, sehingga sering disebut single chip

microcomputer [I]. Lebih lanjut mikrokontroler merupakan sistem komputer yang

mempunyai satu atau atau beberapa tugas yang sangat spesifik, berbeda dengan

PC yang memiliki beberapa fungsi. Perbedaan lainnya adalah perbandingan RAM

dan ROM yang sangat berbeda antara komputer dengan mikrokontroler. Dalam

mikrokontroler, ROM jauh kebih besar dibanding RAM, sedangkan dalam

komputer atau PC RAM jauh lebih besar dibanding ROM.

Mikrokontroler umumnya dikelompokkan dalam satu keluarga. Berikut

adalah contoh-contoh keluarga mikrokontroler :

• Keluarga MCS-51

• Keluarga MC68HC05

• Keluarga MCH68HC11

• Keluarga AVR

• Keluarga PIC 8

Dalam tugas akhir ini akan mempelajari satu jenis mikrokontroler, yaitu

mikrokontroler MCS-51. Beberapa mikrokontroler yang termasuk ke dalam

keluarga MCS-51 sebgai berikut :

• AT89C51/ 52/ 53

• AT89C1051/ 2051/ 4051

• AT89S51/ 52/ 53

(23)

2.2.1 Per bedaan Antara MCS-51 ver si C da n S

Generasi awal MCS-51 adalah mikrokontroler generasi C, yaitu AT89C51

dan AT89C52. Mikrokontroler hanya dapat diprogram secara paralel sehingga

untuk memrogramnya dibutuhkan pemprograman secara khusus. Sistem demikian

mempunyai kelemahan, yaitu :

• IC mudah rusak karena sering dicabut-pasang dan kerusakan paling sering

adalah patahnya kaki IC.

• Kemungkinan terjadinya salah posisi dalam pemasangan IC sangat besar,

sehingga IC menjadi cepat rusak.

• Tidak praktis karena harus selalu mencabut dan memasang IC.

Downloader-nya agak sulit untuk dibuat sendiri, terutama di daerah yang

fasilitasnya masih kurang, tetapi jika membeli, harganya relatif mahal.

Menyadari hal ini, ATMEL kemudian membuat mikrokontroler generasi baru,

yaitu mikrokontroler generasi S (AT89S51, AT89S52, AT89S8252, dan lain-lain)

yang sudah dilengkapi sistem pemprograman serial (ISP – In System

Programming). Sistem ISP memungkinkan mikrokontroler diprogram dalam

papan sistemnya, sehingga tidak ada proses cabut-pasang. Kemudian

downloader-nya sangat mudah dan murah dibuat sendiri.

2.2.2 Bahasa Pempr ogr aman Mikr okontroler

Secara umum, bahasa yang digunakan untuk pemprogramannya adalah

bahasa tingkat rendah, yaitu bahasa assembly. Setiap mikrokontroler memiliki

bahasa pemprogrman yang berbeda. Karena banyaknya hambatan dalam

(24)

untuk bahasa tingkat tinggi. Untuk MCS-51, bahasa tingkat tinggi yang banyak

dikembangkan antara lain BASIC, Pascal dan bahasa C.

Dalam tugas akhir ini menggunakan BASCOM-8051, yaitu compiler yang

menggunakan bahasa BASIC. Alasannya adalah bahasa BASIC relatif lebih

mudah dibanding bahasa tingkat tinggi lainnya. Kemudian compiler cukup

lengkap karena telah dilengkapi simulator untuk LED, LCD, dan monitor untuk

komunikasi serial. Dengan demikian sistem yang dibuat akan lebih mudah.

2.3 Mikr okontroler AT89S52

Mikrokontroler AT89S52 merupakan pengembangan dari mikrokontroler

standart MCS-51. Sehingga hal-hal yang terdapat dalam mikrokontroler MCS-51

juga berlaku untuk mikrokontroler AT89S52. Karena adanya fitur tambahan yang

tidak terdapat pada mikrokontroler MCS-51, maka mikrokontroler AT89S52

dapat menggantikan mikrokontroler MCS-51, tetapi tidak demikian sebaliknya.

Selain itu mikrokontroler AT89S52 memiliki daya tahan yang relatif lama.

Diagram blok mikrokontroler AT89S52 dapat dilihat pada Gambar 2.1 berikut ini

(25)

2.3.1 Str uktur Mikr okontr oler AT89S52

Mikrokontroler AT89S52 mempunyai kelengkapan sebagai berikut:

• Kompatibel dengan mikrokontroler MCS-51.

8 Kbyte downloadable flash memori.

• Kbyte EEPROM.

• 256 byte RAM internal.

• 32 I/O yang dapat dipakai semua.

2 buah timer/counter 16 bit.

Programmable UART (serial port).

SPI serial interface.

Programmable watchdog timer.

Dual data pointer.

• Tegangan operasi 2w,7 Volt sampai 6 Volt.

2.3.2 Data Memor i (EEPROM) dan RAM

Berbeda dengan mikrokontroler standart MCS-51, mikrokontroler

AT89S52 juga dilengkapi dengan data memori yang berupa EEPROM

(Electrically Erasable Programmable Read Only Memory). EEPROM yang di

tanamkan ini besarnya 2 Kbyte dan dipakai penyimpanan data. EEPROM on-chip

ini diakses dengan mengeset bit EEMEN pada register WMCON pada alamat

96H. alamat EEPROM ini adalah 000H sampai 7FFH. Instruksi movx digunakan

untuk mengakses EEPROM internal ini. Namun jika ingin mengakses data

(26)

bit EEMEN harus dibuat “0”. Sedangkan RAM yang ada pada mikrokontroler ini

adalah berkapasitas 256 byte.

Mikrokontroler AT89S52 mempunyai stuktur memori yang terpisah antara

RAM Internal dan Flash EEPROM-nya. Seperti yang tampak pada gambar 2.2.

RAM Internal dialamati oleh RAM Address Register (Register alamat RAM).

Sedangkan Flash PEROM yang menyimpan perintah-perintah MCS-51 dialamati

oleh Program Address Register (Register alamat Program). Melihat struktur

memori tersebut jelas antara RAM Internal dan Flash PEROM secara fisik

keduanya tidak saling berhubungan.

Gambar 2.4 Alamat RAM Internal dan Flash EEPROM

2.3.3 Konfigur asi Kaki Mikr okontr oler AT89S52

Gambar 2.5 Konfigurasi Kaki AT89S52. A T 8 9 S 8 2 5 2

1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0

V c c P 0 . 0 ( A D 0 ) P 0 . 1 ( A D 1 ) P 0 . 2 ( A D 2 ) P 0 . 3 ( A D 3 ) P 0 . 4 ( A D 4 ) P 0 . 5 ( A D 5 ) P 0 . 6 ( A D 6 ) P 0 . 7 ( A D 7 )

E A / V P P

2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 3 0 3 1 3 2 3 3 3 4 3 5 3 6 3 7 3 8 3 9 4 0

A L E / P R O G P S E N P 2 . 7 ( A 1 5 )

P 2 . 1 ( A 9 ) P 2 . 2 ( A 1 0 ) P 2 . 3 ( A 1 1 ) P 2 . 4 ( A 1 2 ) P 2 . 5 ( A 1 3 ) P 2 . 6 ( A 1 4 )

P 2 . 0 ( A 8 ) ( T 2 ) P 1 . 0

( T 2 E X ) P 1 . 1 P 1 . 2 P 1 . 3 ( S S ) P 1 . 4 ( M O S I ) P 1 . 5 ( M I S O ) P 1 . 6

( S C K ) P 1 . 7

( R X D ) P 3 . 0 ( T X D ) P 3 . 1 ( I N T 0 ) P 3 . 2 ( I N T 1 ) P 3 . 3

X T A L 1 X T A L 2 ( R D ) P 3 . 7 ( W R ) P 3 . 6 ( T 1 ) P 3 . 5 ( T 0 ) P 3 . 4

G N D R S T RAM

Address

Register Program

Address Register Special Function Register RAM Internal FF 80 7F

00 Flash

EEROM 7FF

(27)

Mikrokontroler AT89S52 mempunyai 40 kaki. Adapun kegunaan dari

masing-masing kaki pada mikrokontroler ini adalah sebagai berikut :

Port 0 (32...39)

Berfungsi sebagai I/O biasa, low order multiplex address/data ataupun

menerima kode byte pada saat Flash Programming. Pada fungsi sebagai I/O

dapat mengendalikan 8 buah TTL.

Port 1 (1...8)

Berfungsi sebagai I/O biasa atau menerima low order address bytes selama

pada saat Flash Programming. Sebagai output, port ini dapat mengendalikan 4

buah input TTL.

Port 2 (21...28)

Berfungsi sebagai I/O biasa atau high order address, pada saat mengakses

memori secara 16 bit. Port ini sebagai output dapat mengendalikan 4 buah

input TTL.

Port 3 (10...17)

Sebagai I/O biasa mempunyai sifat yang sama dengan port 1 maupun port 2.

Sedangkan sebagai fungsi spesial port-port ini mempunyai keterangan sebagai

berikut :

P3.0 (RXD) : Serial input port

P3.1 (TXD) : Serial output Port

P3.2 (INT0) : External interrupt 0

P3.3 (INT1) : External interrupt 1

(28)

P3.5 (T1) : Timer/counter 1 External Input

P3.6(WR) : External data memory write strobe

P3.7(RD) : External data memory read strobe

• RST (9)

Merupakan input untuk reset. Reset akan aktif dengan memberikan input high

selama 2 cycle.

• ALE (30)

Pin ini dapat berfungsi sebagai Address Latch Enable (ALE) yang

memberikan sinyal latch low byte address pada saat mengakses memori

eksternal. ALE hanya akan aktif pada saat mengakses memori eksternal

(MOVX & MOVC).

• PSEN (29)

Program Store Enable, pin ini berfungsi pada saat mengekskusi program yang

terletak pada memori eksternal. PSEN akan aktif dua kali setiap cycle.

• EA/VPP (31)

External Access Enable, pin ini membuat mikrokontroler menjalankan

program yang ada pada memori eksternal setelah sistem di-reset, pada kondisi

low. Pada kondisi high, membuat mikrokontroler menjalankan program yang

ada pada memori internal.

• XTAL1 (19)

Masukan untuk penguat inverting asilator dan masukan rangkaian clock

(29)

• XTAL2 (18)

Keluaran dari inverting osilator.

2.4 BASCOM-8051

Basic Compiler (BASCOM-8051) adalah program Basic compiler yang

berbasis Windows untuk mikrokontroler keluarga 8051 seperti AT89C51,

AT89C2051, dan yang lainya. BASCOM-8051 merupakan pemprograman dengan

bahasa tingkat tinggi Basic yang dikembangkan dan dikeluarkan oleh MCS

Electronic.

2.4.1 Bagian-bagian BASCOM

Ketika program BASCOM-8051 dijalankan dengan mengklik ganda ikon

BASCOM-8051, maka berikut akan tampil.

(30)

Tabel 2.1 Daftar Fungsi Menu BASCOM-8051

Ikon Nama Fungsi Shor tcut

File New Membuat file baru Ctrl+N

Open File Membuka file Ctrl+N

File Save Menyimpan file Ctrl+S

File Close Menutup program yang dibuka

Ctrl+O

Save As Menyimpan dengan nama lain -

Print Preview

Melihat tampilan sebelum dicetak

-

Print Mencetak dokumen Ctrl+P

Exit Keluar dari program -

Program Compile

Mengkompile program yang dibuat. Outputnya bisa berupa *.hex, *.bin, dan lain-lain

F7

Syntax Check

Memeriksa kesalahan bahasa Ctrl+F7

Show Result

Menampilkan kompilasi program

Ctrl+W

Menu Show Result menampilkan informasi berupa:

Tabel 2.2 Info Show Result

Info Keter angan

Compiler Versi kompiler yang digunakan

Processor Menampilkan target prosesor yang dipilih

Date and time Tanggal dan waktu kompilasi

Boud Timer Timer yang digunakan untuk menghasilkan boud rate;

0 ketika tidak ada timer yang digunakan

Boud rate dan

frekuensi

Boud rate yang dipilih dan kristal yang digunakan

untuk kecepatan transfer data.

ROM Start Lokasi awal ROM

RAM Start Lokasi awal eksternal RAM

LCD Mode Mode LCD yang digunakan, 4 bit atau 8 bit

Stack Start Lokasi awal stack. Ruangan di bawah stack

digunakan untuk variable

(31)

2.4.2 Pr ogr am Simulasi

BASCOM-8051 menyediakan pilihan yang dapat mensimulasikan

program. Tampilan program simulasi adalah

Gambar 2.7 Jendela Program Simulasi

Tombol play berfungsi memulai simulasi. Untuk menghentikan proses simulasi

yang sedang berjalan, gunakan tombol stop. Layar biru di tengah merupakan

simulasi layar komputer ketika menggunakan perintah PRINT atau INPUT.

Dapat melihat perubahan variabel yang digunakan dalam program ketika pada

kolom nama variabel. Ketika program dijalankan, maka setiap perubahan variabel

akan ditampilkan. Bagian lainnya adalah nilai register-register akan ditampilkan

ketika simulasi dijalankan.

Tombol berikut merupakan simulasi interrupt dari mikrokontroler:

(32)

Dengan menekan tombol diatas, missal INT0, program simulasi akan

mendeteksi adanya interrupt 0. Dengan catatan interrupt 0-nya harus diaktifkan

terlebih dahulu.

Agar dapat melihat perubahan data pada setiap port atau ketika ingin

memberikan input pada pin-pin tertentu mikrokontroler, maka digunakan tombol

untuk menampilakn jendela sebagai berikut:

Bagian atas mensimulasikan perintah-perintah yang berhubungan dengan

LCD. Sebaliknya, deretan LCD yang dibawah menunjukan kondisi

masing-masing port yang dihubungkan secara common ground. Jika menggunakan

hardware common anode, maka tanda checklist dihilangkan. Untuk memberikan

input pada pin-pin tertentu, tinggal menekan LED yang diinginkan, maka

program simulasi akan melakukan program yang sedang disimulasikan. Misalnya

menggunakan port PI.7 sebagai input, maka menekan LED pada kolom 7 dan

baris P1 ketika program telah dijalankan. Simulasi menunjukkan sebenarnya pada

mikrokontroller bila dijalankan. Sehingga dapat disesuaikan dengan dunia nyata

apakah program berfungsi baik.

(33)

2.4.3 Compiler atau Pener jemah

BASCOM-8051 menyediakan pilihan untuk memodifikasi pilihan-pilihan

pada kompilasi. Dengan memilih menu Compiler, jendela berikut akan tampil:

Gambar 2.10 Jendela Option

Keterangan dari pilihan sebagai berikut:

Tabel 2.3 Keterangan Menu Pilihan

TAB Menu OPTION Keter angan

Output Binery file Menghasilkan file biner

HEX file Menghasilkan file hexadecimal

DEBUG file Menghasilkan file debug dan map yang diperlukan program simulator

Report file Menghasilkan file report

Error file Menghasilkan file error

Old Itel HEX Menghasilkan file old Intel Hex yang digunakan

beberapa monitor

Communication Baudrate Baud rate yang digunakan untuk komunikasi

RS232 dangan komputer

Frequency Frekuensi kristal yang digunakan mikrokontroler

(34)

SDA port Pin untuk jalur SDA yang digunakan rutin I2C

RC5 port Pin yang digunakan untuk statemen GETRC5

Lanjutan Tabel 2.3 Keterangan Menu Pilihan

2.4.4 Pr ogr am BASCOM 8051

BASCOM-8051 menyediakan rutin-rutin yang mengatur hubungan

mikrokontroler dengan komponen hardware yang tambahan lainnya. Hardware

harus dihubungkan dengan port yang telah ditentukan sebelumnya secara default

oleh BASCOM maupun oleh pengguna. Dapat melakukan pengaturan dengan

mengubah pilihan pada bagian kompiler yang telah dijelaskan diatas.

Sebagai contoh, peraga LCD harus dihubungkan dengan pin-pin berikut.

Tabel 2.4 Tabel Alokasi Port untuk LCD

Per aga LCD Por t Pin

DB7 PI.7 14

DB6 PI.6 13

DB5 PI.5 12

DB4 PI.4 11

E PI.3 6

RS PI.2 5

RW Ground 4

Vss Ground 1

Vdd Vcc 2

(35)

2.4.5 Kar akter dalam BASCOM

Dalam program BASCOM, karakter dasarnya terdiri atas karakter alphabet

(A-Z dan a-z) , karakter numerik (0-9), dan karakter special (lihat Tabel 2.5).

Tabel 2.5 Karakter Special

Kar akter Nama

Blank atau spasi

Apostrophe

* Asterisk (symbol perkalian)

+ Plus sign

, Comma

- Minus sign

. Period (decimal point)

/ Slash (division symbol) will be handled as \

: Colon

Double quatition mark

; Semicolon

< Less than

= Equal sign (assignment symbol or relational operator)

> Greater than

\ Backslash (integer or word division symbol)

2.4.6 Tipe Data

Setiap variabel dalam BASCOM memiliki tipe data yang menunjukkan

daya tampungnya. Hal ini berhubungan dengan pengguna memori mikrokontroler.

Berikut adalah tipe data pada BASCOM berikut keterangannya.

Tabel 2.6 Tipe Data BASCOM

Tipe Data Ukuran (byte) Range

Bit 1/8 -

Byte 1 0-255

Integer 2 -32,768 - +32,767

Word 2 0 -65535

Long 4 -214748364 - + 2147483647

Single 4 -

(36)

2.4.6.1 Var iabel

Variabel dalam suatu pemograman berfungsi sebagai tempat penyimpanan

data sementara, misalnya menampung hasil perhitungan, menampung data hasil

pembacaan register, dan lain sebagainya. Variabel merupakan pointer yang

menunjukan pada alamat memori fisik di mikrokontroler.

Dalam BASCOM, ada beberapa aturan dalam penamaan sebuah variabel:

• Nama variabel maksimum terdiri atas 32 karakter.

• Karakter biasa berupa angka atau huruf.

• Nama variabel harus dimulai dengan huruf.

• Variabel tidak boleh menggunakan kata-kata yang digunakan oleh BASCOM

sebagai perintah, pertanyaan, internal, register, dan nama operator (AND, OR,

DIM, dan lain-lain).

Sebelum digunakan, maka variabel harus dideklarasikan terlebih dahulu. Dalam

BASCOM, ada beberapa cara untuk mendeklarasikan sebuah variabel. Cara

pertama adalah menggunakan pernyataan ‘DIM’ diikuti nama dan tipe datanya.

Contoh pendeklarasian menggunakan DIM sebagai berikut:

Dim nama As byt e

Dim tom bol1 As Integer

Dim tom bol2 As Wor d

Dim tom bol3 As Wor d

Dim tom bol4 As Wor d

Dim kas As s tr ing* 10

Cara mempercepat pendeklarasian sebuah variable yang banyak adalah:

Dim nama As byt e, tom bol1 As Integer

Dim tom bol2 As bit, tom bol4 As Wor d

(37)

Cara lain untuk mendeklarasikan sebuah variabel adalah menggunakan

DEFINT, DEFBIT, DEFBYTE, dan atau DEFWORD. Contohnya:

DEFBYTE nama

DEFINT tom bol1

DEFWORD tom bol2 , tom bol3 , tom bol4

Deklarasi di atas berarti nama tipe datanya adalah b yte; tombol1 tipe

datanya adalah integer; tombol2 tombol3, dan tombol4 lalu tipe datanya adalah

word.

2.4.6.2 Alias

Dengan menggunakan alias, variabel yang sama dapat diberikan nama

yang lain. Tujuannya adalah mempermudah proses pemrograman. Umumnya,

alias digunakan untuk menggantikan nama variabel yang telah baku, seperti port

mikrokontroler.

LEDBAR alias P1

tom bol1 alias P0.1

tom bol1 alias P0.2

Dengan deklarasi diatas, perubahan pada tombol1 akan mengubah kondisi P0.1.

2.4.6.3 Konstanta

Dalam BASCOM, selain variabel dikenal pula konstanta. Konstanta

merupakan variabel pula. Perbedaan dengan variabel biasa adalah nilai yang

dikandungnya tetap. Dengan konstanta, kode program dibuat akan lebih mudah

dibaca dan dapat mencegah kesalahan penulisan pada program. Misalnya, akan

(38)

agar konstanta bias dikenali oleh program. Berikut adalah cara pendeklarasian

sebuah konstanta.

Dim A Ascont 5

Dim B1 Asconst &B10 0 1

Cara lain yang lebih mudah:

Const cbyt e = &HF

Const cint = - 10 0 0

Const cs ingle = 1.1

Const cstr ing = “ tes t

2.4.6.3 Ar r ay

Dengan array, bisa menggunakan sekumpulan variabel dengan nama dan

tipe yang sama. Untuk mengakses variabel tertentu dalam array, harus

menggunakan indeks. Indeks harus berupa angka dengan tipe data byte, integer,

atau word. Artinya, nilai maksimum sebuah indeks sebesar 65535. Proses

pendeklarasian sebuah array hampir sama dengan variabel, namun perbedaan

mengikutkan jumlah elemennya. Berikut adalah contoh pemakaian array:

Dim kelas (10) As byte

Dim c As integer

For c = 1 to 10

a (c) = c

p1 = a (c)

next

Program diatas membuat sebuah array dengan nama ‘kelas’ yang berisi 10

elemen (1-10) dan kemudian seluruh elemennya diisikan dengan nilai c yang

beruntun. Untuk membacanya, menggunakan indeks di mana elemen disimpan.

Pada program diatas, elemen-elemen array-nya dikeluarkan ke port 1 dari

(39)

2.4.7 Oper asi-oper asi dalam BASCOM 8051

Selanjutnya akan membahas cara menggambungkan, memodifikasi,

membandingkan, atau mendapatkan informasi tentang sebuah pernyataan dengan

menggunakan operator-operator yang tersedia di BASCOM. Juga akan

menjelaskan pula bagaimana sebuah pernyataan terbentuk dan dihasilkan dari

operator-operator berikut:

• Oper ator Ar itmatika

Operator digunakan dalam perhitungan. Operator aritmatika meliputi +

(tambah), - (kurang), / (bagi), dan * (kali).

• Oper ator Relasi

Operator berfungsi membandingkan nilai sebuah angka dengan angka

lainnya. Seperti layaknya nilai perbandingan matematika operator relasi

menggunakan lambang-lambang yang hampir sama. Hasilnya dapat digunakan

untuk membuat keputusan sesuai dengan program yang di buat. Operator relasi ini

memiliki lambang yang hampir sama logika arit matematika seperti sama dengan

(=), ataupun lambang pembandingan seperti lebih besar (>) dan lebih kecil (<)

bahkan tidak sama dengan. Tetapi tidak semua lambang aritmatika dilambangkan

sama. Operator relasi meliputi:

Tabel 2.7 Tabel Operator Relasi

Oper ator Relasi Per nyataan

= < > < > < = > = Sama dengan Tidak sama dengan

Lebih kecil dari Lebih besar dari Lebih kecil atau sama dengan Lebih besar atau sama dengan

X =Y X < > Y

(40)

• Oper ator Logika

Operator digunakan untuk menguji sebuah kondisi atau memanipulasi

bit dan operasi bolean. Dalam BASCOM, ada empat sebuah operator logika,

yaitu AND, OR, NOT, dan XOR.

Operator logika bisa pula digunakan untuk menguji sebuah byte

dengan pola bit tertentu, sebagai contoh:

Dim A As Byte

A = 6 3 and 19

Pr int A

A = 10 or 9

Pr int A

A < 2 0 xnot 12

Pr int A

A < 2 0 not 12

Pr int A

16

11

• Oper ator Fungsi

Operator yang digunakan untuk melengkapi operator yang sederhana.

2.4.8 Kontr ol Pr ogram

Keunggulan suatu program pada kontrol program. Dengan kontrol

program, akan mengendalikan alur sebuah program dan menentukan apa

yang harus dilakukan oleh sebuah program ketika menemukan kondisi

tertentu. Kondisi program meliputi kontrol pertimbangan kondisi dan

(41)

beberapa kontrol program yang sering digunakan dalam pemrograman

dengan BASCOM.

2.4.8.1 If...Then

Dengan pernyataan if…then, dapat mengetes kondisi tertentu, kemudian

menentukan tindakan yang sesuai dengan kondisi yang diinginkan. Sintaksis

penulisannya sebagai berikut:

IF <s yar at kondisi> THEN < per nyat aan >

Sitaksis di atas digunakan jika hanya ada satu kondisi yang diuji dan hanya

melakukan satu tindakan. Jika melakukan lebih dari satu tindakan, maka

sintaksisnya adalah:

IF <s yar at kondisi> THEN

< per nyataan ke- 1>

< per nyataan ke- 2 >

.

.

< per nyataan ke- n>

END IF

2.4.8.2 Select...Case

Perintah Select…Case akan mengeksekusi beberapa blok pernyatan

tergantung pada nilai variabelnya. Perintah mirip dengan perintah if...then, namun

memiliki kelebihan, yaitu kemudahan pada penulisannya. Sintaksisnya sebagai

berikut:

SELECT CASE var iabel

CASE tes t1 : s tatem ents

CASE tes t1 : s tatem ents

CASE ELSE s tat ements

(42)

2.4.8.3 While...Wend

Perintah While…Wend akan mengeksekusi sebuah pernyataan secara

berulang ketika masih menemukan kondisi yang sama. Perintah akan berhenti jika

ada perubahan kondisi dan melakukan perintah selanjutnya. Sintaksisnya sebagai

berikut:

WHILE <s yar at kondisi>

WEND <per nyat aan>

2.4.8.4 Do...Loop

Perintah Do...loop digunakan untuk mengulangi sebuah blok pernyataan

terus-menerus. Untuk membatasi perulanganya, dapat menambahkan sebuah

syarat kondisi agar perulangan berhenti dan perintahnya menjadi Do...loop until.

Sintaksisnya sebagai berikut:

Do

<blok per nyataan>

Loop

Dengan per intah Do...loop unt il:

Do

<blok per nyataan>

Loop unt il <syar at kondis i>

2.4.8.5 For ...Next

Perintah For…Next digunakan untuk mengeksekusi sebuah blok

pernyataan secara berulang. Perintah hampir sama dengan perintah Do...loop.

Namun, pada perintah For...Next nilai awal dan akhir perulangan serta tingkat

(43)

FOR var = s tar t TO/ DOWNTO end [ STEP value]

<blok per nyataan>

Next

Untuk menaikan nilai perulangan, gunakan To, sedangkan untuk

menurunkan, gunakan Downto. Tingkat kenaikan merupakan pilihan, sehingga

menggunakannya atau tidak. Jika nilai kenaikan tidak ditentukan, maka secara

otomatis BASCOM akan menentukan nilainya, yaitu 1

2.4.8.6 Exit

Perintah Exit digunakan untuk keluar secara langsung dari blok program

For...Next, Do...loop, Sub...Endsub, While...Wend. sintaksis penulisannya adalah:

EXIT [ Do] [ For ] [ while] [ Sub]

2.4.8.7 Gosub

Dengan Gosub, program akan melompat ke sebuah label dan akan

menjalankan program yang ada dalam subrutin sampai menemui perintah return.

Perintah return akan mengembalikan program ke titik setelah perintah Gosub.

Sintaksisnya sebagai berikut:Pr int “coba rutin”

Gosub cabang

Pr int “ Hallo”

END

Cabang:

X = X + 2

X = X + len( HALLO)

Pr i nt X

RETURN

Program di atas pertama-tama akan melakukan perintah pr int ”coba

(44)

proses matematika dan pr int x. Kemudian, program akan kembali ke titik semula

dan melakukan perintah pr int ”hallo”.

2.4.8.8 Goto

Perintah GOTO digunakan untuk melakukan percabangan. Perbedaan

dengan GOSUB ialah perintah GOTO tidak memerlukan perintah return, sehingga

program tidak akan kembali ke titik di mana perintah GOTO berada.

2.5 Pemodelan Data

Model Data adalah kumpulan perangkat konseptual untuk menggambarkan

data, hubungan data, semantik (makna) data dan batasan data.

2.5.1 Entity Relationship Diagr am (ERD)

Sesuai dengan namanya, ERD dibentuk dari 2 komponen utama, yakni:

- Entitas (entity)

- Relasi (relation)

Yang dideskripsikan lebih detail dengan sejumlah attribute (properti)

2.5.2 Entitas dan Attr ibut

Entitas (entity), merupakan obyek yang mewakili sesuatu dalam dunia

nyata, baik secara fisik (mobil, rumah, manusia, pegawai dsb) ataupun secara

konsep (department, pekerjaan, mata kuliah dsb) dan dapat dibedakan antara satu

(45)

Setiap entitas pasti memiliki attribut yang mendeskripsikan karakteristik

(property) dari entitas tersebut. Penetapan attribut dari sebuah entitas berdasarkan

fakta yang ada atau berdasarkan kebutuhan. Attribut identik dengan kolom data

atau field dalam sebuah tabel.

2.5.3 Relasi

Relasi menayatakan hubungan antar entitas termasuk terhadap entitas itu

sendiri (rekursif).

a. Der ajat Kar dinalitas r elasi (Cardinality Ratio)

Kardinalitas relasi menunjukkan jumlah maksimum data entitas yang

dapat berelasi dengan entitas lain.

b. Satu ke satu (one to one)

Setiap data pada entitas A berhubungan dengan maksimal satu data pada

entitas B, begitu pula sebaliknya.

c. Satu ke Banyak (one to many)

Setiap data pada entitas A bisa berhubungan dengan banyak data pada

entitas B, tetapi data pada entitas B berhubungan maksimal hanya dengan

sebuah data di A.

d. Banyak ke Satu (many to one)

Merupakan kebalikan dari relasi satu ke banyak.

e. Banyak ke Banyak (many ke many)

Setiap data pada entitas A bisa berhubungan dengan banyak data pada entitas

B, demikian pula sebaliknya. Kardinalitas satu ke banyak maupun banyak ke

(46)

2.6 Power Designer

Struktur dari sebuah database tergantung pada model datanya. Banyak

terdapat model data, tetapi yang sering digunakan adalah model Entity

Relationship Diagram ( ERD ), dimana dengan ERD akan diterjemahkan konsep

database tentang sistem yang ada. Dengan power Designer terdapat notasi

tersendiri untuk memperjelas hubungan antar tabel. Beberapa notasi dasar pada

Power Designer :

Tabel 2.8 Bentuk Notasi dalam Power Designer

No Nama Notasi Bentuk Notasi Keter angan

1 Entitas

2 Relasi Rel ationship_1

Rel ationship_1 One-to-Many One-to-One Rel ationship_1 Relationship_1 Many-to-One Many-to-Many

3 Atribut Tag <pi>

menunjukkan

primeri key dan tag

<M> menunjukkan

mandatory.

Dalam Power Designer terdapat empat macam pemodelan yaitu :

(47)

CDM memodelkan struktur logis dari aplikasi data, tanpa tergantung pada

software DBMS atau model struktur data.

Physical Data Model ( PDM )

PDM merupakan representasi fisik dari database yang akan dibuat dengan

mempertimbangkan DBMS yang akan digunakan, PDM dapat dihasilkan

dengan meng-generate dari CDM yang valid.

• Object Oriented Model ( OOM )

OOM memodelkan sistem dari software dengan menggunakan pendekatan

berorientasi objek untuk sebuah bahasa pemrograman. OOM yang valid dapat

dikonversi ke CDM atau PDM.

• Business Process Model ( BPM )

BPM memodelkan sarana untuk penyelesaian satu atau beberapa proses dalam

konsep praktek bisnis.

2.7 Definisi MySQL

Menurut Har is Saputro (2003) mengemukakan bahwa MySQL

merupakan database server dimana pemrosesan data terjadi di server, dan client

hanya mengirim data serta meminta data. Oleh karena pemprosesan terjadi di

server sehingga pengaksesan data tidak terbatas. Pengaksesan dapat dilakukan

dimana saja oleh siapa saja dengan catatan komputer telah terhubung ke server.

Lain halnya dengan database desktop di mana segala pemrosesan data seperti

penambahan data ataupun penghapusan data harus dilakukan pada komputer yang

(48)

MySQL termasuk dalam kategori database manajemen sistem, yaitu database yang terstruktur dalam pengolahan dan penampilan data. Sejak

komputer dapat menangani data yang besar, database manajemen sistem

memegang peranan yang sangat penting dalam pengolahan data. Hal ini sangat

diperlukan, karena data tersebut dapat diatur sesuai dengan kebutuhan

pemakainya. MySQL merupakan Relational Database Manajemen Sistem

(RDBMS) yaitu hubungan antar tabel yang berisi data-data pada suatu database.

Hal tersebut lebih baik daripada jika semua data terkumpul menjadi satu dalam

satu tabel. Kelebihan hal di atas, yaitu dapat mempercepat pencarian suatu tabel.

Tabel-tabel tersebut di link oleh suatu relasi yang memungkinkan untuk

mengkombinasikan data dari beberapa tabel ketika seorang user menginginkan

menampilkan informasi dari suatu database.

2.7.1 Pr ogr am Database MySQL

Ada beberapa alasan mengapa MySQL menjadi program database yang

sangat popular dan digunakan oleh banyak orang. Alasan-alasan tersebut

diantaranya ialah :

MySQL merupakan database yang memiliki kecepatan yang tinggi dalam

melakukan pemrosesan data, dapat diandalkan dan mudah digunakan serta

mudah dipelajari. Mengapa mudah digunakan? Sebab MySQL telah banyak

digunakan di belahan bumi manapun sehingga jika mempunyai masalah

dengan database tersebut, dapat bertanya kepada banyak orang (pengguna

(49)

menyelesaikan masalah tersebut serta dukungan manual maupun referensi

yang banyak bertebaran di internet.

MySQL mendukung banyak bahasa pemrograman seperti C, C++, Perl,

Phython, Java, dan PHP. Kita dapat menggunakan bahasa pemrograman

tersebut untuk berinterakasi maupun berkomunikasi dengan MySQL, atau

dapat juga digunakan sebagai komponen pembentuk antarmuka (interface)

dari suatu database MySQL.

Koneksi, kecepatan, dan keamanan membuat MySQL sangat cocok diterapkan

untuk pengaksesan database melalui internet, dengan menggunakan bahasa

pemrograman Perl atau PHP sebagai antarmukanya.

MySQL dapat melakukan koneksi dengan client menggunakan protocol

TCP/IP, Unix socket (Unix), atau Named Pipes (NT).

MySQL dapat menangani database dengan skala yang sangat besar dengan

jumlah record mencapai lebih dari 50 juta, dapat menampung 60 ribu tabel,

dan juga bisa menampung 5 milyar baris data. Selain itu, batas indek pada

tiap tabel dapat menampung mencapai 32 indek.

Dalam hal relasi antartabel pada suatu database, MySQL menerapkan metode

yang sangat cepat yaitu dengan menggunakan metode one-sweep multijoin.

MySQL sangat efisien dalam mengelola informasi yang kita minta yang

berasal dari banyak tabel sekaligus.

Multiuser, yaitu dalam satu database server pada MySQL dapat diakses oleh

beberapa user dalam waktu yang sama tanpa mengalami konflik atau crash.

Security yang dimiliki database MySQL dikenal baik, karena memiliki lapisan

(50)

sistem perizinan yang khusus serta password yang dimiliki setiap user dalam

bentuk data terenkripsi.

MySQL merupakan software database yang bersifat free atau gratis, jadi kita

tidak perlu mengeluarkan uang untuk pembelian lisensi aplikasi database ini

kepada pembuat ataupun developer software. Hal ini sangat berbeda jika kita

menggunakan software database seperti IBM DB@, SQL SERVER ataupun

Oracle, karena kita harus membayar mahal untuk mendapatkan lisensinya.

2.8 Visual Basic 6.0

MS Visual Basic 6.0 for windows adalah bahasa pemrograman yang

bekerja dalam sistem operasi Microsoft Windows. VB dapat memanfaatkan

kemampuan MS-Windows secara optimal. Aplikasi ini menggunakan kata visual

dikarenakan pelopor tampilan yang mudah dipahami.

Sampai tahun 2005, versi VB terakhir adalah Micosoft Visual Basic 2005,

yang dalam versi beta disebut dengan kode “Wwidbey”. VB versi 6 sendiri di

Indonesia masih banyak digemari programmer karena tidak membutuhkan

persyaratan spesifikasi hardware yang tinggi dan paketnya cukup ringkas

sehingga program mudah dipakai. Dan beberapa alasan lainnya.

Kata “Basic’ merupakan bagian bahasa BASIC (Beginners All Purpose

Symbolic Instruction Code), yaitu sebuah bahasa pemprograman yang dalam

sejarahnya sudah banyak digunakan oleh para programer untuk menyusun

aplikasi. Visual Basic dikembangkan dari bahasa pemrograman BASIC dan

sekarang berisi banyak statemen, fungsi, dan keyword, yang beberapa diantaranya

(51)

2.9 Flowchart

Flowchart merupakan metode untuk menggambarkan tahap-tahap

pemecahan masalah dengan merepresentasikan simbol-simbol tertentu yang

mudah dimengerti, mudah digunakan dan standart.

Tujuan utama penggunaan flowchart adalah untuk menggambarkan suatu tahapan

penyelesaian masalah secara sederhana, terurai, rapi dan jelas dengan

menggunakan simbol-simbol yang standart. Tahap penyelesaian masalah yang

disajikan harus jelas, sederhana, efektif dan tepat.

Berikut ini adalah gambar dari simbol-simbol standart yang digunakan pada

program flowchart.

Proses / Perintah Input / Output Procedure

Pengujian Display Awal / Akhir Flowchart

Konektor pada

satu halaman

Konektor pada

lain halaman

Arah

(52)

Pada pengambaran program flowchart, ada dua jenis metode, yaitu conceptual

flowchart dan detail flowchart. Conceptual flowchart mengambarkan tentang

alur dari suatu pemecahan masalah secara globlal saja, sedangkan detail flowchart

menggambarkan alur pemecahan masalah secara rinci.

Contoh detail flowchart sebagai berikut :

2.10 Unified Modelling Language (UML)

Unified Modelling Language (UML) adalah sebuah "bahasa" yg telah

menjadi standar dalam industri untuk visualisasi, merancang dan

mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar

untuk merancang model sebuah sistem [II].

Dengan menggunakan UML dapat membuat model untuk semua jenis

aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras,

sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman

apapun. Tetapi karena UML juga menggunakan class dan operation dalam konsep Start

End For I=1 to jml

Input jml

I = I +1 Print I

End for

(53)

dasarnya, maka ia lebih cocok untuk penulisan piranti lunak dalam bahasa-bahasa

berorientasi objek seperti C++, Java, C# atau VB.NET. Walaupun demikian,

UML tetap dapat digunakan untuk modeling aplikasi prosedural dalam VB atau C.

Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan

syntax/semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk

menggambarkan berbagai diagram piranti lunak. Setiap bentuk memiliki makna

tertentu, dan UML syntax mendefinisikan bagaimana bentuk-bentuk tersebut

dapat dikombinasikan. Notasi UML terutama diturunkan dari 3 notasi yang telah

ada sebelumnya: Grady Booch OOD (Object-Oriented Design), Jim Rumbaugh

OMT (Object Modeling Technique), dan Ivar Jacobson OOSE (Object-Oriented

Software Engineering).

2.10.1 Konsepsi Dasar UML

Dari berbagai penjelasan secara panjang lebar yang tertulis secara

mendetail di dokumen dan buku-buku UML. Untuk mempermudah dalam

memahami teori UML sebenarnya konsepsi dasar UML bisa dirangkumkan secara

garis besar dalam tabel dibawah.

(54)

Abstraksi konsep dasar UML yang terdiri dari structural classification, dynamic

behavior, dan model management, bisa dipahami dengan mudah apabila melihat

gambar diatas dari Diagrams. Main concepts bisa dipandang sebagai term yang

akan muncul pada saat membuat diagram. Dan view adalah kategori dari diagaram

tersebut.

Untuk menguasai UML, sebenarnya cukup dua hal yang harus diperhatikan:

• Menguasai pembuatan diagram UML

• Menguasai langkah-langkah dalam analisa dan pengembangan dengan UML

Seperti juga tercantum pada tabel diatas UML mendefinisikan diagram-diagram

sebagai berikut:

a. use case diagram b. class diagram c. statechart diagram d. activity diagram e. sequence diagram f. collaboration diagram g. component diagram h. deployment diagram

2.10.2 Use Ca se Diagr am

Use case diagram menggambarkan fungsionalitas yang diharapkan dari

sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan

(55)

dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke

sistem, meng-create sebuah daftar belanja, dan sebagainya.

Seorang/sebuah aktor adalah sebuah entitas manusia atau mesin yang

berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu. Use

case diagram dapat sangat membantu bila sedang menyusun requirement sebuah

sistem, mengkomunikasikan rancangan dengan klien, dan merancang test case

untuk semua feature yang ada pada sistem. Sebuah use case dapat meng-include

fungsionalitas use case lain sebagai bagian dari proses dalam dirinya. Secara

umum diasumsikan bahwa use case yang di-include akan dipanggil setiap kali use

case yang meng-include dieksekusi secara normal. Sebuah use case dapat di-include oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas dapat

dihindari dengan cara menarik keluar fungsionalitas yang common. Sebuah use

case juga dapat meng-extend use case lain dengan behaviour-nya sendiri.

Sementara hubungan generalisasi antar use case menunjukkan bahwa use case

yang satu merupakan spesialisasi dari yang lain.

Contoh use case diagram :

(56)

2.10.3 Class Diagram

Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan

sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi

objek. Class menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus

menawarkan layanan untuk memanipulasi keadaan tersebut (metoda/fungsi).

Class diagram menggambarkan struktur dan deskripsi class, package dan

objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi,

dan lain-lain.

Class memiliki tiga area pokok :

• Nama (dan stereotype)

• Atribut

• Metoda

Atribut dan metoda dapat memiliki salah satu sifat berikut :

Private, tidak dapat dipanggil dari luar class yang bersangkutan

Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak

yang mewarisinya

Public, dapat dipanggil oleh siapa saja

Gambar 2.14 Public Dalam Class

Class dapat merupakan implementasi dari sebuah interface, yaitu class abstrak

(57)

tetapi harus diimplementasikan dahulu menjadi sebuah class. Dengan demikian

interface mendukung resolusi metoda pada saat run-time.

Sesuai dengan perkembangan class model, class dapat dikelompokkan menjadi

package. Juga dapat membuat diagram yang terdiri atas package.

Hubungan Antar Class

Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan

class yang memiliki atribut berupa class lain, atau class yang harus

mengetahui eksistensi class lain. Panah navigability menunjukkan arah

query antar class.

• Agregasi, yaitu hubungan yang menyatakan bagian (“terdiri atas..”).

Pewarisan, yaitu hubungan hirarkis antar class. Class dapat diturunkan

dari class lain dan mewarisi semua atribut dan metoda class asalnya dan

menambahkan fungsionalitas baru, sehingga ia disebut anak dari class

yang diwarisinya. Kebalikan dari pewarisan adalah generalisasi. Gambar 2.15 Run-time Dalam Class

(58)

Hubungan dinamis, yaitu rangkaian pesan (message) yang di-passing dari

satu class kepada class lain. Hubungan dinamis dapat digambarkan dengan

menggunakan sequence diagram yang akan dijelaskan kemudian.

Contoh class diagram :

Gambar 2.17 Contoh Class Diagram

2.10.4 Statechar t Diagram

Statechart diagram menggambarkan transisi dan perubahan keadaan (dari

satu state ke state lainnya) suatu objek pada sistem sebagai akibat dari stimuli

yang diterima. Pada umumnya statechart diagram menggambarkan class tertentu

(satu class dapat memiliki lebih dari satu statechart diagram).

Dalam UML, state digambarkan berbentuk segiempat dengan sudut

membulat dan memiliki nama sesuai kondisinya saat itu. Transisi antar state

umumnya memiliki kondisi guard yang merupakan syarat terjadinya transisi yang

bersangkutan, dituliskan dalam kurung siku. Action yang dilakukan sebagai akibat

(59)

Titik

Gambar

Tabel 2.2 Info Show Result
Tabel 2.3 Keterangan Menu Pilihan
Gambar 2.11 Simbol-simbol Program Flowchart
Gambar 2.12  Proses Detail Flowchart
+7

Referensi

Dokumen terkait

Pembuatan saluran buangan dari berbagai ruangan Poli, Laboratorium, Apotek, Ruang Bersalin, Ruang Keperawatan dan Ruang Kebidanan, Ruang Operasi, Ruang Rontgen,

Dalam mata kuliah ini, akan dibahas secara luas mengenai konsep dan aplikasi Total Quality Management (TQM), ISO 22000 dan konsep Hazard Analysis Critical Control

Adapun pola pelayanan umum di desa Banyuurip ialah masyarakat ke kantor desa dengan membawa KK, KTP dan surat pengantar dari RT/ RW, kemudian menyampaikan

Puji dan syukur penulis panjatkan ke hadirat Allah SWT, karena dengan taufik dan hidayah-Nya penulis dapat menyelesaikan skripsi ini yang berjudul ”

Selain perkembangan intelektual, masa awal anak-anak merupakan perkembangan tugas pokok dalam belajar berbahasa, yaitu menambah kosakata, menguasai pengucapan kata

Telah kita ketahui bahwa sebelum memikirkan usaha apa yang akan dijalankan, perlu dikaji kelayakan dari usaha tersebut. Salah satu pengkajian yang dilakukan adalah dari

Dari pengertian dan pendapat para ahli filsuf maupun ahli hukum di atas, dapat ditarik suatu kesimpulan, bahwa asas keseimbangan merupakan perpaduan antara beberapa komponen

Berdasarkan teori-teori diatas dapat ditarik kesimpulan bahwa dukungan sosial adalah bentuk pertolongan yang dapat berupa materi, emosi, dan informasi yang diberikan oleh