• Tidak ada hasil yang ditemukan

PEMBACA BARCODE 128 SISTEM IDENTIFIKASI OTOMATIS TIKET PENUMPANG TUGAS AKHIR - Pembaca barcode 128 pada sistem identifikasi tiket penumpang otomatis - USD Repository

N/A
N/A
Protected

Academic year: 2019

Membagikan "PEMBACA BARCODE 128 SISTEM IDENTIFIKASI OTOMATIS TIKET PENUMPANG TUGAS AKHIR - Pembaca barcode 128 pada sistem identifikasi tiket penumpang otomatis - USD Repository"

Copied!
67
0
0

Teks penuh

(1)

PEMBACA BARCODE 128

SISTEM IDENTIFIKASI OTOMATIS TIKET PENUMPANG TUGAS AKHIR

Diajukan Sebagai Salah Satu Syarat Memperoleh Gelar Sarjana Teknik

Jurusan Teknik Elektro

Disusun oleh : YAYUK SULISTIOWATI

NIM : 015114044

PROGRAM STUDI TEKNIK ELEKTRO JURUSAN TEKNIK ELEKTRO

FAKULTAS TEKNIK

UNIVERSITAS SANATA DHARMA YOGYAKARTA

2007

(2)

THE AUTOMATIC PASSENGGERS TICKET IDENTIFICATION SYSTEM BARCODE READER 128

THE FINAL PROJECT

Presented as Partial Fulfillment of the Requirements to Obtain the Sarjana Teknik Degree

in Electrical Engineering

Arranged by :

YAYUK SULISTIOWATI STUDENT NUMBER: 015114044

ELECTRICAL ENGINEERING STUDY PROGRAM ELECTRICAL ENGINERING DEPARTMENT

ENGINEERING FACULTY SANATA DHARMA UNIVERSITY

YOGYAKARTA 2007

(3)
(4)
(5)

HALAMAN PERNYATAAN KEASLIAN HASIL KARYA

Dengan ini saya menyatakan bahwa dalam Tugas Akhir ini tidak terdapat karya yang pernah diajukan untuk memperoleh gelar kesarjanaan di suatu Perguruan Tinggi, dan sepanjang pengetahuan saya juga tidak terdapat karya atau pendapat yang pernah ditulis atau diterbitkan oleh orang lain, kecuali yang secara tertulis diacu dalam naskah ini dan disebutkan dalam daftar pustaka.

Yogyakarta, Januari 2007 Penulis

Yayuk Sulistiowati

(6)

Tidak ada hikmat dan pengertian, dan tidak ada pertimbangan yang dapat menandingi Tuhan. (Amsal 21:30)

Janganlah seorangpun menganggap engkau rendah karena engkau muda. Jadilah teladan bagi orang-orang percaya, dalam pekataanmu, dalam tingkah lakumu, dalam kasihmu,

dalam kesetiaanmu, dan dalam kesucianmu. (1 timotius 4 :12)

Janganlah hatimu iri kepada orang-orang yang berdosa, tetapi takutlah akan Tuhan senantiasa. Karena masa depan sungguh ada, dan harapanmu tidak akan hilang. (Amsal

23:17-18)

Skripsi ini kupersembahkan untuk : Kemuliaan Tuhan Yesus Kristus

Orang tuaku yang tercinta :

Bapak AG.Djumiran dan Ibu Widihastuti Sumangkut Kakak-kakakku yang kukasihi :

Edwin Budiono Sumangkut Edhi Sudarmanto Sumangkut Umi Yuniarti,, ST

ALMAMATERKU……

(7)

Kata Pengantar

Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus atas karunia-Nya sehingga penulis dapat menyelesaikan tugas akhir ini dengan baik. Dalam penulisan Tugas Akhir ini penulis banyak mendapat bantuan, sehingga laporan ini dapat selesai pada waktunya. Oleh karena itu pada kesempatan ini penulis ingin menyampaikan ucapan terima kasih yang sebesar-besarnya kepada orang tuaku Ag.Djumiran dan Widihastuti Sumangkut, saudara-saudaraku: Mas Ed, Mas Edhi, Mbak Yun yang terus mendukung sampai diselesaikannya Tugas Akhir ini.

Pada kesempatan ini penulis juga mengucapkan banyak terima kasih kepada: 1. Ir. Greg. Herliarko, SJ., SS.,BST.,MA.,MSc.,selaku Dekan Fakultas Teknik 2. Bapak A. Bayu Primawan,S.T.,M.T., selaku Kaprodi Teknik Elektro.

3. Bapak Ir. Iswanjono, MT atas ide-ide, nasehat dan bimbingannya selama penyusunan Tugas Akhir ini.

4. Bapak Petrus Setyo Prabowo,S.T atas nasehat-nasehat dalam penulisan laporan Tugas akhir.

5. Bapak dan Ibu dosen yang telah banyak memberikan pengetahuan dan bimbingan kepada penulis selama kuliah.

6. Pak Jito, Mas Broto dan Mas Suryo, dan segenap dosen dan karyawan USD. 7. Kakak iparku mbak Ester, kemenakan-2ku Christy E.S.Sumangkut, Dirgo S. K

Sumangkut, Gilang J. Sumangkut, Saudara-2 sepupuku yang berada di Poso, atas dukungan, kasih sayang, perhatian kepada penulis.

(8)

8. Papi dan mami Tedjo yang telah bersedia menjadi orangtua pengganti penulis selama di Jogja.

9. Teman-teman satu tim PHK Elektro APTIS : Hernomo, Indra “Tatang, Liong, Sulis “kang mas”, than’x untuk kerjasama, dukungan, ide, saran, bantuan, suka duka dalam pengerjaan tugas akhir ini. I Love you guys

10.Teman-teman Jurusan Teknik Elektro: Pinto adik 23 hariku yang sedikit….?! hehe ^_^, Indra “Klowor” yang jahil, tukang ganggu tapi sangat murah hati, Ronny “Ganyong”, Tonny, Tomo, Bowo, Joko, Butet, Koko, Dody, Andry, dll, yang telah membantu bertukar pikiran juga memberikan dorongan semangat dalam susah dan bahagia.

11.Sahabat-sahabat terbaikku: “Oma” Rossy, “Tante” Ridha, “Adik bungsu” Prima, Annie, atas kebersamaan, perhatian dan dukungan do’anya untuk ”ibu”. Semoga kita tetap bersahabat walopun terpisah antar pulau ^_^

12.Adek-adek terbaikQu yang atas bantuan dan dukungannya selama penyelesaian tugas akhir, Chyntia Carla ”Lala” atas motivasi dan dukungan doanya. U2 untuk pinjaman kamera digital n dukungannya. Manto & Jun’x untuk perhatian dan kasih sayang.

13.Teman-teman kost “Gg.Cabe 68”: Ina ”InuL”atas dukungan doa dan pinjaman printernya, Desti, Zhieyo, Atiek, Betrix, Yusni, Ayu untuk motivasinya. Teman-teman kost “Prima Sari”: Jane “godhe”, inung, Ratna, Helen walo cuman 3 bulan, than’x untuk hari-2 yang menyenangkan n’ dukungan kalian. Bravo!!!

(9)

14.Semua Teman-teman Komisi Pemuda dan Komisi Dewasa Muda di GKI “Gejayan” : Willem, k’Dina, Osha, B’Roy, Roy C, Mikha, Awin, Lola, elyn, Edo, k’Rini, Ms.Bayu, dan yang tidak tersebutkan.

15.Teman-teman di “TB Mentari” : Jeng Prapti than’x pinjaman motornya, Novie, Yustin, Edo, Venni, Adri “Kingkong”, dll.

Tugas Akhir ini baru permulaan dan masih perlu banyak pembenahan. Oleh karena itu kritik dan saran yang membangun dari semua pihak diterima penulis dengan senang hati. Harapan penulis semoga Tugas Akhir ini bermanfaat bagi para pembacanya.

Yogyakarta,…..Maret 2007

Penulis

(10)

PEMBACA BARCODE 128 DALAM SISTEM IDENTIFIKASI OTOMATIS TIKET PENUMPANG (APTIS)

Yayuk Sulistiowati 015114044 INTISARI

Barcode merupakan salah satu alat bantu identifikasi yang sering tertera dalam berbagai produk, kartu identitas ataupun jenis barang lainnya guna mempermudah proses identifikasi. Walaupun banyak jenis alat bantu yang lain seperti magnetic band dan smart card, tapi barcode tetap dapat bertahan karena memiliki keunggulan tersendiri yang tidak dijumpai pada alat bantu yang lain.

Alat pembaca barcode atau barcode reader dapat dibuat sendiri dengan rangkaian yang relatif sederhana dan harga yang relatif murah. Dengan tampilan pada LCD dan pengolahan data dengan Mikrokontroler AT89S51, karakter yang ada pada barcode dapat dikonversikan dan ditampilkan sehingga orang dapat membacanya. Alat pembaca barcode ini dirancang untuk dapat membaca barcode kode 39 dan menampilkan karakternya pada LCD.

Tugas akhir alat pembaca barcode (barcode reader) telah berhasil dibuat dengan kemampuan pembacaan hingga 11 karakter pada 1 kartu (bekas sim card perdana telepon seluler) dengan tingkat kesalahan yang relatif rendah untuk sebuah prototype (10 %).

(11)

DAFTAR ISI

HALAMAN JUDUL DALAM BAHASA INDONESIA ………..…….i

HALAMAN JUDUL DALAM BAHASA INGGRIS………..ii

HALAMAN PERSETUJUAN………...iii

HALAMAN PENGESAHAN………... iv

HALAMAN PERNYATAAN KEASLIAN KARYA……….... v

HALAMAN PERSEMBAHAN……….. vi

KATA PENGANTAR……… vii

DAFTAR ISI………... ix

DAFTAR GAMBAR………...xv

DAFTAR TABEL……….xvii

INTISARI…...xviii

ABSTRACT………... xix

BAB I. Pendahuluan………. 1

1.1 Judul……….. 1

1.2 Latar Belakang Masalah……… 1

1.3 Identifikasi Masalah..………. 1

1.4 Batasan Masalah ……… 2

4.1.1. Rumusan Masalah……… 3

1.5 Tujuan Penelitian….……….. 4

1.6 Manfaat Penelitian ………. 4

1.7 Metodologi Penelitian ………. 4

BAB II. Dasar Teori……….. 5

(12)

2.1 Pengertian Barcode………...……… 5

2.1.1 Jenis-jenis Barcode………. 5

A. Code 128……….……… 5

B. Code 39 (3 of 9)………..11

C. Interleaved 2 of 5 (ITF)………...12

D. UPC (Universal Product Code)………...12

2.1.2 Pembaca Barcode………...12

2.2 Sensor Barcode Reader ………..13

2.2.1 Rangkaian Photo Diode………..13

2.2.2 Rangkaian LED Super Bright………15

2.3 Pengkondisi Sinyal………...………...16

2.4. Stepper Motor……….17

2.5 Penggerak Stepper Motor.………..……….19

2.6 Mikrokontroler AT89S51………20

2.6.1 Osilator Mikrokontroler AT89S51……...………...…….….23

BAB III. Perancangan ………..………...24

3.1 Blok Diagram Sistem Identifikasi Tiket Penumpang Otomatis………..24

3.2 Perancangan Perangkat Keras……….…………24

3.3 Tiket Barcode…..……….………....25

3.4 Sensor Barcode Reader……….………..25

3.4.1 LED Super Bright……….…….….……26

3.4.2 Photo Diode ...………... .27

3.5 Pengkondisi Sinyal………...……….29

3.6 Stepper Motor……… ………..……..……...30

3.7 Penggerak Stepper Motor………..……….………30

3.8 Stepping Motor...31

3.9 Mikrokontroler Atmel AT8951..……….32

3.9.1 Pensaklaran (Switching) oleh mikrokontroler AT89S51…………33

3.10 LED Indikator………..…... 34

(13)

3.11 Perancangan Software (Perangkat lunak)………..………..34

3.11.1 Algoritma keseluruhan system kerja ……….35

3.11.2 Flow chart progam utama………...36

3.11.3 Flow chart progam Pembacaan barcode 128……….37

BAB IV. Hasil dan Pembahasan……….…….38

4.1 Pengamatan Alat……… ………..………...38

4.1.1 Tiket barcode………...………...39

4.1.2 Proses Pembacaan Barcode ...…..40

4.1.3 Pengiriman data………..42

4.2 Data Pengamatan………..………...43

4.2.1. Data Pengamatan Perangkat Keras………...43

4.2.2. Data Pengamatan Stepping....…..……….. 44

4.3. Kesalahan Pembacaan……….44

BAB V. Kesimpulan dan Saran……….45

5.1 Kesimpulan……….45

5.2 Saran………45

DAFTAR PUSTAKA

Lampiran

(14)

DAFTAR GAMBAR

Gambar 2.1 Struktur Barcode 128………. 11

Gambar 2.2 Barcode Jenis code 3 of 9...…..…..………...11

Gambar 2.3 Barcode jenis Interleaved 2 of 5………... 12

Gambar 2.4 Barcode jenis UPC………....…………12

Gambar 2.5 Rangkaian Photodiode pada sensor barcode reader………….….. ...13

Gambar 2.6 Rangkaian Timer 555 Astable (datasheet LM555)…….……….15

Gambar 2.7 Rangkain dasar super bright LED ………….………16

Gambar 2.8. Op-Amp sebagai pembanding (komparator)……….…………16

Gambar 2.9 Struktur dasar Stepper Motorr………...……….17

Gambar 2.10 Gelombang dasar pergerakan pulsa stepper motor…….……….….20

Gambar 2.11 Konfigurasi pin AT89S51...……….………...21

Gambar 3.1 Blok diagram APTIS...….….………24

Gambar 3.2 Blok diagram alat pengidentifikasi tiket penumpang dengan sistem barcode…………...……...25

Gambar 3.3 Perancangan Mekanik Barcode Reader...26

Gambar 3.4 Rangkaian Super Brigth LED ...27

Gambar 3.5 Rangkaian Photodiode...28

Gambar 3.6 Rangkaian pengkondisi sinyal …………...………...29

Gambar 3.7 Diagram blok penggerak stepper motor...……..…30

Gambar 3.8 Diagram blok penggunaan port mikrokontroler AT89S51 pada rancangan barcode reader………...33

Gambar 3.9 Rangkaian pensaklaran oleh mikrokontroler ...34

Gambar 3.10 Indikator LED pada mikrokontroler…………..………...34

Gambar 3.11 Flow Chart program utama...……..………...…………36

(15)

Gambar 3.12 Flow chart pembaca barcode 128...……….37

Gambar 4.1 Bebtuk fisik alat dilihat dari atas... 35

Gambar 4.2 Barcode pada tiket penumpang armada APTIS………..36

Gambar 4.3 Peletakan sensor pembaca barcode………...…..…...37

Gambar 4.4 Bentuk gelombang masukan ULN 2803...38

(16)

DAFTAR TABEL

Tabel 2.1 Set karakter code 128... ………... .6

Tabel 2.2 Pengaturan Langkah Stepper Motor ………... 18

Tabel 2.3 Fungsi pin pada mikrokontroler AT89S51………... 22

Tabel 3.1 Penggunaan port pada mikrokontroler..………...32

Tabel 4.1 Perubahan keluaran dari sensor...……….…....43

(17)

BAB I PENDAHULUAN

1.1 Judul

Pembaca barcode 128 dalam sistem identifikasi otomatis tiket penumpang

I.2 Latar Belakang Masalah

Kualitas pelayanan jasa transportasi saat ini dirasakan masih kurang maksimal, sehingga menjadi perhatian bagi penulis. Hal ini menyebabkan gangguan-gangguan terhadap tata cara pelaksanaan transportasi antar daerah, kesalahan identifikasi penumpang, kesalahan penumpang mengidentifikasi sarana transportasi yang dipakai, dan praktek percaloan, serta hal-hal yang lebih cenderung merugikan pihak pemakai sarana transportasi.

Untuk mengatasi masalah tersebut perlu dibuat suatu alat pengenal, seperti sebuah alat pembaca Barcode 128 pada tiket penumpang. Alat ini akan mengindentifikasi data lengkap penumpang, seperti nama, jenis kelamin, nomor tempat duduk, nama kendaraan, asal, dan tujuan. Alat pembaca ini akan diatur oleh sebuah mikrokontroler Atmel AT89S51. Alat pembaca ini merupakan bagian dari sebuah sistem identifikasi penumpang secara otomatis.

1.3 Identifikasi Masalah

(18)

Saat ini penggunaan barcode sebagai media pengenal suatu produk sudah sangat mudah kita jumpai. Di setiap supermarket, perkantoran, bank bahkan diperguruan tinggi penggunaan barcode menjadi hal yang umum. Alat pembaca barcode yang sering digunakan menggunakan metode scanner, atau magnetic seperti pada ATM. Pada penelitian ini, penulis akan membuat pembaca barcode 128 yang menggunakan sistem pemantulan cahaya. Kemudian data yang telah dibaca (data pada tiket) akan disimpan sementara dan diubah ke dalam bentuk ASCII. Setelah semua data telah dibaca dan disimpan sementara di Internal RAM, mikrokontroler akan memberikan tanda (LED indicator) menyala.

1.4 Batasan Masalah

Alat pembaca barcode 128 yang akan dirancang memiliki spesifikasi sebagai berikut :

1. Barcode 128

Berupa garis hitam-putih yang dilewatkan pada photo diode (penangkap cahaya) dan super brigth LED (sumber cahaya) sehingga menghasilkan keluaran berupa pulsa.

2. Barcode Reader (pembaca sandi baris)

Pada alat pembaca barcode menggunakan sebuah sensor optocoupler yang akan digunakan sebagai sensor barcode reader dan sebagai sensor pendeteksi ada tidaknya tiket pada barcode reader.

3. Pengondisi sinyal

(19)

Pengondisi sinyal dipakai untuk menguatkan pulsa yang dihasilkan oleh barcode reader sehingga dalam proses pengisian tidak terjadi error.

4. Stepper Motor

Digunakan sebagai penggerak sensor barcode pada saat dilakukan proses pembacaan data pada tiket penumpang.

5. Pengolah data sementara

Pengolah data sementara berfungsi untuk mengubah data dari bentuk pulsa (biner) menjadi bentuk ASCII dan disimpan di Internal-RAM.

1.4.1. Rumusan Masalah

Bagaimana merancang dan mengimpletasikan sistem pengindentifikasi tiket dengan :

1. Penempatan sensor dan sensitifitas sensor sehingga sensor dapat membaca barcode dan mengurangi kesalahan.

2. Perancangan mekanik antara stepper motor dengan sensor barcode sehingga dapat membaca data di tiket penumpang tidak terlalu cepat atau terlalu lambat. 3. Protokol yang digunakan sehingga data tidak hilang (bertabrakan) saat proses

pengindentifikasi berlangsung

1.5 Tujuan Penelitian

Perancangan alat pembaca barcode ini bertujuan untuk membuat perangkat pembaca kode baris untuk mendukung sistem identifikasi tiket penumpang otomatis.

(20)

1.6 Manfaat Penelitian

Sistem pembacaan barcode 128 pada tiket penumpang ini memudahkan penumpang untuk mengetahui nomor kursi, nama kendaraan, nomor transaksi. Hal ini juga akan mengurangi terjadinya praktek pencaloan dan pemalsuan tiket.

1.7 Metodologi Penelitian

Untuk dapat merancang dan membuat peralatan ini diperlukan langkah-langkah : 1. Studi literature yang ada serta mempelajari cara kerja dan cara merencanakan

dan membuat peralatan tersebut.

2. Melakukan perhitungan matematis dalam menentukan komponen yang akan digunakan dan membuat rancangan schematic serta diagram alir (flow chart) seluruh proses kerja pengindentifikasi tiket dengan sistem barcode.

3. Pengambilan data dan percobaan-percobaan untuk mengetahui kesalahan-kesalahan yang terjadi dalam proses perancangan.

4. Menganalisa dan membuat laporan dari alat pengindentifikasi tiket penumpang bus dengan sistem barcode.

(21)

BAB II

LANDASAN TEORI 2.1 Pengertian Barcode

Barcode pada dasarnya adalah susunan garis vertikal hitam dan putih dengan ketebalan yang berbeda, sangat sederhana tapi juga sangat berguna. Dengan kegunaan untuk menyimpan data-data spesifik dengan mudah dan murah misalnya kode produksi, tanggal kadaluarsa, dan nomor identitas. Walaupun teknologi untuk penyimpanan terus berkembang namun teknologi barcode terus bertahan dan masih memiliki kelebihan-kelebihan tertentu yaitu murah dan mudah. Sebab media yang digunakan adalah kertas dan tinta. Sedangkan untuk membaca barcode ada begitu banyak pilihan di pasaran dengan harga dan bentuk yang bervariasi, bahkan kita dapat membuatnya sendiri.

Jenis barcode sangatlah banyak, mulai dari yang tradisional, yaitu satu dimensi sampai dengan barcode yang multi dimensi.

2.1.1 Jenis – jenis Barcode A. Code 128

Code 128 adalah barcode dengan kerapatan tinggi, mampu mengkodekan seluruh simbol ASCII (128 karakter) dalam luasan yang paling minim dibandingkan dengan barcode jenis lain, hal ini disebabkan code 128 menggunakan 4 ketebalan elemen (bar atau spasi) yang berbeda. Jenis yang lain kebanyakan menggunakan 2 ketebalan elemen yang berbeda. Setiap karakter pada code 128 dikodekan oleh 3 bar dan 3 spasi (atau 6 elemen) dengan ketebalan masing-masing elemen 1 sampai 4 kali

(22)

ketebalan minimum (modul). Jika dihitung dengan satuan modul maka tiap karakter code 128 terdiri dari 11 module, kecuali untuk karakter stop yang terdiri dari 4 bar dan 3 spasi (13 modul). Jumlah total modul untuk bar selalu genap sedangkan untuk spasi selalu ganjil, selain itu code 128 memiliki 3 karakter start yang berbeda sehingga, code 128 memiliki 3 sub karakter yang berkesesuaian dengan karakter start. Tabel 2.1 memperlihatkan set karakter code 128

Tabel 2.1 Set karakter Code 128

Bar (B) / Space (S) Pattern Value Code Set A Code Set B Code Set C

B S B S B S

0 SP SP 00 2 1 2 2 2 2

1 ! ! 01 2 2 2 1 2 2

2 “ “ 02 2 2 2 2 2 1

3 # # 03 1 2 1 2 2 3

4 $ $ 04 1 2 1 3 2 2

5 % % 05 1 3 1 2 2 2

6 & & 06 1 2 2 2 1 3

7 ‘ ‘ 07 1 2 2 3 1 2

8 ( ( 08 1 3 2 2 1 2

9 ) ) 09 2 2 1 2 1 3

10 * * 10 2 2 1 3 1 2

11 + + 11 2 3 1 2 1 2

12 , , 12 1 1 2 2 3 2

13 - - 13 1 2 2 1 3 2

14 . . 14 1 2 2 2 3 1

(23)
(24)

40 H H 40 2 3 1 1 1 3 Tabel 2.1. (Lanjutan) Set karakter code 128

(25)

65 SOH a 65 1 2 1 1 2 4

66 STX b 66 1 2 1 4 2 1

Tabel 2.1. (Lanjutan) Set karakter code 128

(26)
(27)

Tabel 2.1. (Lanjutan) Set karakter code 128

Code 128 memiliki fitur untuk dapat bergeser dari sub set satu ke sub set yang lain dengan menggunakan karakter CODE dan SHIFT, CODE X menyebabkan seluruh

(28)

message bergeser menjadi sub set X (misalnya CODE A pada sub set B membuat message bergeser menjadi sub set A), sedangkan SHIFT menyebabkan satu karakter didepannya bergeser sub set (ini hanya berlaku untuk sub set A ke sub set B atau sebaliknya). Struktur barcode code 128 seperti terlihat dibawah ini :

Gambar 2.1 Struktur Barcode 128 B. Code 39 (3 of 9)

Code 39 dapat mengkodekan alphanumeric yaitu angka desimal dan huruf besar serta tambahan karakter spesial - , * $ / % +. Satu karakter dalam code 39 terdiri dari 9 elemen yaitu 5 bar (garis vertikal hitam) dan 4 spasi (garis vertikal putih) yang disusun bergantian antara bar dan spasi. Tiga dari sembilan elemen tersebut memiliki ketebalan lebih tebal dari yang lainnya, oleh karena itu kode ini biasa disebut juga code 3 of 9. Tiga elemen yang lebih tebal tersebut terdiri dari 2 bar dan 1 spasi. Elemen yang lebar mewakili digit biner 1 dan elemen yang sempit mewakili digit biner 0.

Contoh Barcode Code 39 dengan pembacaan CODE 39 diperlihatkan pada gambar 2.2:

CODE

39

C O D E 3 9 Gambar 2 2Barcodejeniscode 39

(29)

C. Interleaved 2 of 5 (ITF)

ITF adalah sebuah Barcode yang berbentuk numerik dan memiliki panjang baris yang bervariasi. Interleaved Barcode 2 of 5 dapat dipergunakan untuk aplikasi industri dan laboratorium. Contoh ITF diperlihatkan pada gambar 2.3.

Gambar 2.3. Barcode jenis Interleaved 2 of 5

D. UPC (Universal Product Code)

UPC adalah sebuah barcode yang berbentuk numerik dan memiliki panjang baris yang tetap (fixed). UPC digunakan untuk pelabelan pada produk-produk kecil/eceran (retail product labeling). Simbol ini dibuat untuk kemudahan pemeriksaan keaslian suatu produk. Bilangan-bilangan UPC harus diregistrasikan atau terdaftar di Uniform Code Council. Contoh UPC diperlihatkan pada gambar 2.4.

Gambar 2.4. Barcode jenis UPC

2.1.2 Pembacaan Barcode

Pembacaan barcode jenis code 128 menggunakan sistem pemantulan cahaya. Sumber cahaya menggunakan super brigth LED dan sebagai penerima cahaya adalah photo diode yang dihubungkan ke basis transistor. Super brigth LED memancarkan cahaya sehingga mengenai permukaan barcode. Bila permukaan garis hitam yang

(30)

terkena cahaya, maka cahaya akan diserap atau tidak dipantulkan sehingga photo diode tidak aktif dan transistor juga tidak aktif (logika 1). Sedangkan bila garis putih yang terkena cahaya, maka cahaya akan dipantulkan ke photo diode sehingga photo diode akan aktif (logika 0)

Super brigth LED bekerja sebagai pena cahaya yang melakukan proses scanning pada permukaan barcode dan photo transistor sebagai penerima dan penentu logika pada barcode.

2.2. Sensor Barcode Reader

Sensor barcode reader terdiri dari 2 buah device, LED super bright dan photo dioda. LED super bright berfungsi sebagai sumber cahaya (transmiter) dan photo diode sebagai penerima (receiver).

2.2.1 Rangkaian Photo diode

Photo diode dirangkai dengan sebuah transistor agar photo diode dapat difungsikan sebagai saklar seperti halnya phototransistor. Rangkaian photo diode seperti terlihat pada gambar 2.5.

Q1

3

2

1

PHOTODIODE

1

2

VCC

R

(31)

Gambar 2.5. Rangkaian photo diode pada sensor Barcode Reader Untuk mengetahui keluaran tegangan dari Q1 pada gambar 2.5, harus didapat

nilai IB. Besar niai IB dapat dihitung dengan rumus :

Cahaya LED super bright yang terpantul dan masuk ke photo diode akan memperkecil nilai tahanan photo diode, sehingga arus yang mengalir ke basis transistor (IB) akan semakin besar, sesuai dengan persamaan (2.1). Keadaan tersebut akan

menyebabkan arus collector (IC) akan besar, sehingga nilai VCE akan semakin kecil,

sesuai dengan persamaan (2.2 dan 2.3).

Sebaliknya, apabila tidak ada cahaya LED super bright (cahaya tidak memantul), maka photo diode tidak aktif (nilai RD2 besar) sehingga arus IB kecil dan

mengakibatkan arus collector (IC) kecil sehingga VCE besar [persamaan (2.2 dan 2.3)].

Dengan menggunakan persamaan (2.1), diperoleh :

(32)

Kemudian dengan mengacu pada persamaan (2.2), maka persamaan (2.3) dapat

2.2.2 Rangkaian LED Super Bright

LED super bright dimodulasi oleh sebuah pembangkit (osilator) gelombang kotak. Hal ini dilakukan untuk menambah sensitifitas penerimaan cahaya pada photo diode . Osilator dibangkitkan dengan rangkaian timer 555 astable seperti terlihat pada gambar 2.7. Besarnya nilai frekuensi yang dihasilkan dapat dihitung dengan rumus

[

(

(

))

]

Gambar 2.6. Rangkaian Timer 555 Astable (datasheet LM555)

Untuk dapat mengaktifkan LED super bright , dibutuhkan arus basis (IB). IB

dihasilkan oleh tegangan keluaran osilator saat TH (logika 1) dan LED super bright

(2.7)

(33)

akan tidak aktif saat TL (logika 0). Tegangan saat TH dianggap sebagai VCC. Gambar 2.7

memperlihatkan rangkaian dasar dari LED super bright , sedangkan besarnya arus IB

dapat dinyatakan:

Gambar 2.7. Rangkaian dasar LED super bright

(2.8)

2.3 Pengkondisi Sinyal

Pengondisi sinyal digunakan untuk menghasilkan logika dengan level tegangan TTL, yaitu 0 V – 0.8 V untuk logika 0 dan 3 V – 5 V untuk logika 1. Hal ini diperlukan untuk memberi masukan pada mikrokontroler AT89S51 yang harus memiliki logika dengan level tegangan TTL. Pengondisi sinyal yang digunakan adalah rangkaian pembanding menggunakan Op-Amp.

-vcc

Gambar 2.8. Op-Amp sebagai pembanding (komparator)

(34)

Vout = -Vsat ≡ +Vcc , Vn > Vp………...…(2.9) Vout = +Vsat≡ -Vee ,Vn < Vp………...….(2.10)

Dalam perancangan ini, Op-Amp digunakan sebagai komparator atau pembanding. Komparator akan membandingkan inverting input (Vn) dan non-inverting input (Vp). Saat nilai Vn lebih besar daripada nilai Vp, maka tegangan keluaran VOUT

akan mendekati nilai tegangan –VCC (VOUT = -VSAT), sedangkan jika tegangan pada Vn

lebih kecil daripada tegangan pada VP maka VOUT akan mendekati nilai tegangan +VCC.

2.4. Stepper Motor

Stepper motor pada dasarnya sama dengan motor-motor listrik pada umumnya, yaitu memiliki bagian yang berputar disebut rotor dan bagian yang tidak berputar disebut stator. Bagian yang berputar (rotor) berupa sebuah magnet dan bagian yang tidak bergerak (stator) berupa kumparan. Kumparan pada stator ini jika dialiri listrik akan membentuk medan magnet.

(35)

Gambar 2.9. Struktur dasar stepper motor

Stepper Motor adalah jenis motor elektrik yang dapat dikendalikan posisi sudutnya secara diskret. Posisi sudut yang dibentuk tergantung pada banyaknya langkah (step) yang dikenakan pada stepper motor. Stepper motor mempunyai ketelitian dan ketepatan serta keterulangan yang tinggi, sehingga stepper motor banyak digunakan pada peralatan yang membutuhkan ketepatan (presisi) yang tinggi.

Stepper motor yang digunakan pada barcode reader adalah stepper motor jenis bipolar. Jenis stepper motor bipolar ini terdiri dari empat lilitan yang dialiri arus dengan arah bolak balik. Memiliki empat buah terminal keluaran, yaitu L1, L2, L3, L4 yang juga

kesemua terminal bisa menjadi ground.

Pengaturan stepper motor adalah melalui pengaturan masukan pada lilitan-lilitan motor. Pengaturan ini melalui beberapa pengkodean seperti terlihat pada tabel 2.3

Tabel 2.1. Pengaturan langkah stepper motor

Step L1 L2 L3 L4

1 + -

2 + -

3 - +

4 - +

Saat L1 berlogika 1 (+), artinya switch pada L1 terhubung dan L3 terhubung ke ground,

sehingga arus akan mengalir melalui L1 maka akan timbul medan magnet di L1.

(36)

Ketelitian pada stepper motor adalah 3.75º per step. Sudut yang dibentuk antar stator stepper motor adalah 90º 2.5. Penggerak Stepper Motor

Penggerak stepper motor menggunakan rangkaian digital dengan sebuah osilator pembangkit gelombang kotak timer 555 astable seperti terlihat pada gambar 2.6

Pergerakan per langkah stepper motor akan sama dengan nilai frekuensi yang dibangkitkan oleh osilator tersebut. Nilai frekuensi yang dibangkitkan oleh osilator dapat dihitung dengan rumus persamaan (2.7)

Keluaran dari osilator akan menngendalikan IC bidirectional 4-bit shift register yang kemudian dikonversikan untuk menmengendalikan IC penggerak motor stepper unipolar. Keluaran dari osilator juga menmengendalikan IC flip-flop dual ‘D’ tipe positive-edge-triggered yang akan mengendalikan saklar pergerakan motor (CW atau CCW) pada IC bidirectional 4-bit shift register.

Gambar 2.10 menunjukkan gelombang keluaran dari osilator dan keluaran dari IC bidirectional 4-bit shift register. THigh gelombang IC bidirectional 4-bit shift register

sama dengan 1 gelombang penuh keluaran osilator.

(37)

Gambar 2.10. Gelombang dasar pergerakan pulsa motor stepper

2. 6. Mikrokontroler AT89S51

Mikrontroler AT89S51 merupakan salah satu keluarga dari MCS-51 keluaran Atmel. Jenis mikrokontroler ini pada prinsipnya dapat digunakan unutuk mengolah data per bit maupun data 8 bit secara bersamaan. Gambar 2.11 menunjukkan susunan kaki dari mikrokontroler AT89S51.

Beberapa fasilitas yang dimiliki oleh mikrokontroler AT89S51 adalah sebagai berikut :

ƒ Sebuah Central Processing Unit 8 bit.

ƒ Osilator internal dan rangkaian pewaktu.

ƒ RAM internal 128 x 8 bit.

(38)

ƒ Flash memori 4 Kbyte.

ƒ Lima buah jalur interupsi (dua buah interupsi eksternal dan tiga buah interupsi

internal).

ƒ Empat buah programable port I/O yang masing-masing terdiri dari delapan buah

jalur I/O.

ƒ Sebuah serial port dengan kontrol serial full duplex UART.

ƒ Kemampuan unutuk melaksanakan operasi aritmatika dan operasi logika.

ƒ Kecepatan dalam melaksanakan instruksi per siklus 1,1 mikrodetik pada

frekuensi 11,059 Mhz.

Gambar.2.11 Konfigurasi pin AT89S51

Penjelasan beberapa pin mikrokontroler adalah sebagai berikut :

ƒ Port 0 merupakan port paralel 8 bit dua arah. Posisi Low Significant Bit

(LSB) terletak pada pin 39 dan Most Significant Bit (MSB) terletak pada pin 32.

(39)

ƒ Port 1 merupakan port paralel 8 bit dua arah. Posisi (LSB) terletak pada

pin 1 dan (MSB) terletak pada pin 8.

ƒ Port 2 merupakan port paralel 8 bit dua arah. Port ini megirim byte

alamat-alamat bila dilakukan pengaksesan memori eksternal. LSB terletak pada pin 21 dan MSB pada pin 28.

ƒ Port 3 merupakan port paralel 8 bit dua arah. Posisi (LSB) terletak pada

pin 10 dan (MSB) terletak pada pin 17. Port ini mempunyai beberapa fungsi khusus yang ditunjukan pada tabel 2.2.

Tabel. 2.2 Fungsi pin pada port 3

Pin-pin pada port 3 Fungsi Pengganti P3.0 RxD (Port input serial)

P3.1 TxD (Port output serial) P3.2 INT0 (Interrupt eksternal 0) P3.3 INT1 (Interrupt eksternal 1) P3.4 T0 (Input Eksternal timer 0) P3.5 T1 (Input Eksternal timer 1)

P3.6 WR (Perintah write pada memori eksternal) P3.7 RD (Perintah read pada memori eksternal)

Dalam perancangan ini, register kontrol yang dipakai antara lain :

¾ IE (Interupt Eneble)

(40)

Register IE digunakan untuk mengaktifkan atau menonaktifkan sarana interupsi. IE.0 sampai IE.6 mengatur masing-masing sumber interupsi, sedangkan IE.7 mengatur interupsi secara keseluruhan. Jika IE.7 bernilai 0, maka sistem interupsi akan menjadi non-aktif atau keadaan IE.0 sampai IE.6 tidak diperhatikan.

¾ TMOD (Timer Mode)

Register TMOD digunakan untuk mengatur mode kerja timer 0 dan timer 1. Timer digunakan untuk menentukan besarnya baudrate yang akan digunakan dalam komunikasi serial.

¾ TCON (Timer Control)

Register TCON digunakan untuk memulai atau menghentikan proses pencacah timer, mengatur sinyal interupsi dari INT0 atau INT1, serta memantau apakah ada sinyal yang masuk ke INT0 atau INT1.

¾ SCON (Serial Control)

Register SCON digunakan untuk mengatur perilaku dari UART yang diantaranya adalah memantau proses pengiriman dan penerimaan data seri.

2.6.1. Oscillator Mikrokontroler

(41)

Rangkaian osilator adalah rangkaian pembangkit frrekuensi untuk menentukan besarnya waktu untuk tiap siklus pada mikrokontroler. Waktu yang dibutuhkan untuk tiap siklus dapat di cari dengan persamaan :

osc Cycle

f

T = 12 ... (2.11)

(42)

BAB III

PERANCANGAN

Perancangan peralatan yang dibuat meliputi penyusunan diagram blok, rancangan perangkat keras, konstruksi peralatan, dan bagan alir program (flow chart).

3.1 Blok Diagram Sistem Identifikasi Tiket penumpang Otomatis (APTIS)

Barcode Generator

Barcode Reader

Pembanding Data

Driver Pintu

Seat Display

Gambar 3.1 Blok Diagram APTIS

Sistem Identifikasi Tiket penumpang Otomatis terdiri dari lima bagian, yaitu Barcode Generator yang berfungsi sebagai pencetak kode baris pada tiket. Barcode Reader berfungsi untuk membaca kode baris pada tiket. Pembanding data digunakan untuk membandingkan kode baris pada tiket dengan data dari database (Barcode Generator). Driver pintu berfungsi sebagai penggerak pintu otomatis, dan Seat Display berfungsi untuk menampilkan nomor kursi.

(43)

3.2 Perancangan perangkat keras

Perancangan perangkat keras alat pengindentifikasi tiket penumpang dengan mikrokontroler AT89S51 memiliki 6 bagian , yaitu masukan berupa kartu barcode, barcode reader (pembaca barcode) menggunakan 2 buah sensor. Motor stepper digunakan sebagai penggerak sensor barcode. Pengondisi sinyal berupa rangkaian Op-Amp sebagai pembanding tegangan. Mikrokontroler AT89S51 digunakan sebagai pengambil data dari user dan pengolah data sementara, dan LED indikator sebagai penampil digunakan untuk memberikan tanda kepada user apakah bus yang digunakan benar. Diagram blok sistem pengindentifikasi tiket dapat dilihat pada gambar 3.1:

``

Gambar 3.2. Diagram blok alat pengindentifikasi tiket penumpang dengan sistem barcode

3.3 Tiket Barcode

Sistem masukan berupa kartu/karcis yang sudah terdapat sandi garis (Barcode) berjenis code 128.

(44)

3.4 Sensor Barcode Reader

Sensor yang digunakan dalam sistem ini menggunakan sensor optocoupler yang terdiri dari LED super bright dan photo dioda..

Penempatan sensor harus tepat dan diupayakan tidak terlalu banyak sinar yang masuk saat pembacaan barcode dilakukan. Hal ini dimaksudkan untuk menghindari terjadinya error.

Tiket Sensor

Arah gerakan Stepper

Belt

Ruang

Limit

Limit

Gambar 3.3. Perancangan mekanik Barcode reader

3.4.1 LED Super Bright

Sensor barcode reader terdiri dari LED super bright dan photo diode seperti terlihat pada gambar 3.5. Karakteristik dari LED super bright tersebut mirip dengan

(45)

LED biasa, hanya saja arus maju maksimum (ID) pada LED super bright lebih besar dari

LED biasa dan intensitas cahaya yang dihasilkannya lebih kuat. Arus maju (ID) berkisar

antara 10 – 20mA, dan tegangan majunya (VD)berkisar antara 1.6 – 2 Volt. Nilai ID dan

VD berdasarkan karakteristik LED pada umumnya, karena data dari LED tidak

diketahui. Pada perancangan digunakan ID = 10mA dan VD = 1.7 Volt dengan VCC = 5

Volt. Untuk membatasi besarnya ID digunakan hambatan (RD)

Untuk mendapatkan nilai hambatan yang diinginkan, sesuai dengan persamaan (2.5), didapat :

Jadi hambatan yang dibutuhkan untuk super bright LED sebesar 330 Ohm.

3.4.2 Frekuensi Pemodulasi

Frekuensi yang dibangkitkan oleh timer 555 asstable merupkaan frekuensi pemodulasi LED super bright. Frekuensi modulasi harus mampu menghasilkan pencahayaan yang cukup pada LED super bright, sehingga kartu barcode mampu memantulkan cahaya. Pada perancangan ini, penulis menggunakan frekuensi 105 kHz,

(46)

dengan acuan bahwa frekuensi tersebut sudah mampu menghasilkan pencahayaan yang cukup pada LED super bright. Dengan persamaan (2.7), frekuensi tersebut didapat dengan:

3.4.3 Photo Dioda

Untuk nilai β = 75, VBE = 0.6 (data sheet 2N2222A) nilai R photo diode saat

terkena cahaya = 30 kΩ dan saat tidak terkena cahaya = 50 kΩ. Nilai R photo diode berdasarkan hasil pengukuran dengan kapasitas cahaya pada siang hari di dalam ruangan. Dengan persamaan (2.6), bila nilai VBE tetap, maka nilai VCE tergantung

dengan nilai IBRB. Sedangkan nilai IB pada persamaan (2.1), bila VBE dan VCC tetap,

tergantung dari penjumlahan RD2 dan βR1. Sehingga untuk mendapatkan perubahan

nilai IB yang besar yang berbanding lurus dengan perubahan nilai RD2, dibutuhkan nilai

R1 yang jauh lebih kecil terhadap nilai RD2. Dalam perancangan ini, penulis

(47)

(

)

• Nilai VCE saat cahaya tidak memantul

(

)

Keluaran sensor dideteksi oleh mikrokontroler pada pin P3.4 sebagai keadaan logika

‘1’ atau ‘0’.

Keluaran dari kaki collector pada barcode reader difungsikan sebagai masukan non-inverting op-amp, sedangkan masukan inverting menjadi tegangan acuan yang besarnya diatur oleh pembagi tegangan sehingga berada diantara selisih tegangan yang terjadi.

(48)

3.5 Pengkondisi Sinyal

Pengkondisi sinyal disini menggunakan rangkaian Op-Amp pembanding tegangan dengan tegangan acuan sebagai pembandingnya.

Gambar.3.6. Rangkaian Pengondisi Sinyal

Kaki kolektor dihubungkan dengan inverting input (VN) op-amp. Masukan noninverting

input (VP) menjadi tegangan acuan yang besarnya diatur dengan variabel resistor

sebesar 20K Ohm. Op-Amp digunakan sebagai komparator, membandingkan VN

(tegangan inverting) dan VP (tegangan non-inverting). Saat tegangan inverting lebih

besar daripada tegangan non-inverting, maka keluaran Op-Amp = 0. dan saat tegangan non-inverting lebih besar dari tegangan inverting, maka keluaran Amp = Vcc Op-Amp yang dipakai adalah seri LM339 yang berisi empat buah komparator. Pada LM 339 –Vcc dihubungkan ke ground sehingga besarnya 0 Volt. Jadi Vout berkisar antara 0-5 Volt.

3.6. Stepper Motor

(49)

Stepper motor dalam perancangan ini dipakai untuk menggerakkan sensor pembaca barcode dengan arah gerak horizontal (kiri dan kanan) dengan cara menarik rantai karet yang berada pada roda penyangga sensor barcode. Stepper motor akan mulai bekerja saat sensor barcode mendeteksii ada tidaknya data pada tiket yang akan di akses. Arus yang menggerakkan stepper motor berasal dari keluaran port mikrokontroler, setelah dikuatkan (amplified) oleh penggerak stepper motor.

3.7. Penggerak Stepper Motor

Stepper motor membutuhkan rangkaian penggerak tersendiri agar motor tidak terbebani (arus motor konstan) dan gerakan motor konstan pada saat mikrokontroler melakukan pembacaan. Mikrokontroler hanya melakukan pensaklaran (switching) untuk menentukan arah putaran, mengaktifkan dan memberhentikan putaran motor. Saklar 1 (S0) aktif akan mengerakan motor searah jarum jam (CW) dan saklar 2 aktif (S1) akan mengerakan motor berlawanan arah jarum jam (CCW) dan bila kedua saklar aktif atau tidak aktif, motor akan berhenti.

OSILATOR

Gambar 3.7. Diagram blok penggerak stepper motor a. Osilator

Menggunakan timer 555 astable untuk menghasilkan frekuensi dengan nilai frekuensi yang sama dengan jumlah step per detik.

(50)

b. Pensaklaran (Switching)

Digunakan untuk mengendalikan arah putaran motor yang dilakukan oleh mikrokontroler.

c. Konverter

Mengubah pulsa gelombang kotak yang dihasilkan untuk osilator menjadi bentuk gelombang kotak dasar untuk menggerakan driver stepper motor. Pergeseran pulsa keluaran (CW & CCW) dari konverter tergantung dari pensaklaran yang dilakukan oleh mikrokontroler

d. Pegerak (driver) stepper motor

Driver stepper motor adalah IC dengan darlington arus tinggi, penggerak tegangan tinggi. Hal ini disebabkan karena stepper motor membutuhkan tegangan tinggi (12 - 24 V) dan arus yang besar. Menggunakan IC ULN 2804 dan L293D.

3.8. Mikrokontroler Atmel AT89S51

Perancangan ini menggunakan mikrokontroler AT89S51 buatan ATMEL karena mokrokontroler ini mudah untuk diterapkan pada berbagai perancangan alat elektronika. Hal lain yang mendukung adalah port masukan-keluaran yang dapat digunakan adalah 4 buah, dan mudah untuk men-downlood program maupun data.

Mikrokontroler AT89S51 digunakan sebagai pengambil data dari tiket user, mengolah data sementara serta mengeluarkannya ke tampilan. Data yang diambil, dikonversikan menjadi data ASCII yang kemudian di simpan pada IRAM.

(51)

Mikrokontroler AT89S51 memiliki 4 port yang dapat dipakai untuk input maupun output. Port yang dipakai untuk peralatan ini dapat dilihat pada tabel 3.1. penggunaan port mikrokontroler juga dapat dijelaskan dengan diagram blok yang dapat dilihat pada gambar 3.8.

Tabel 3.1 Penggunaan port pada mikrokontroler

Port Fungsi Keterangan

P.1 Sensor Barcode Masukan

P2.0 Stepper CW Keluaran

P2.3 Stepper Motor CCW Keluaran

P2.5 Sinkronisasi Keluaran

P2.6-P2.7 Limit Switch CW & CCW Masukan

P3.0 Komunikasi Serial Keluaran

P3.7 Reset Masukan

(52)

AT89S51

Sinkronisasi

Limit SwitchCW

Komunikasi Sensor Barcode

LED Stepper MotorCW & Catu Daya

Gambar 3.8. Diagram blok penggunaan port mikrokontroler AT 89S51 3.8.1 Pensaklaran (Switching) oleh Mikrokontroler

Untuk mengendalikan putaran motor (berhenti, CCW, dan CW), mikrokontroler membutuhkan 2 port, yaitu port 2.3 dan port 2.0. Gambar 3.9 memperlihatkan rangkaian pensaklaran yang dilakukan oleh mikrokontroler. Pensaklaran ini menggunakan logika rendah, atau dengan kata lain, salah satu saklar akan aktif bila logika pada salah satu port (port 2.3 atau 2.0) berlogika 0, dan saklar akan tidak aktif bila logika pada port adalah 1. Saat port 2.0 berlogika 0 dan port 2.3 berlogika 1 (saklar 1 aktif, saklar 2 tidak aktif), motor akan bergerak berlawanan arah dengan jarum jam (CCW). Saat logika pada port 2.3 adalah logika 0 dan port 2.0 berlogika 1 (saklar 2 aktif, saklar 1 tidak aktif), motor akan bergerak searah jarum jam (CW). Motor akan berhenti bila port 2.0 dan port 2.3 memiliki logika yang sama (kedua saklar aktif atau kedua saklar tidak aktif)

(53)

Saklar 1 (S0)

Gambar 3.9. Rangkaian pensaklaran oleh mikrokontroler 3.9. LED Indikator

Keluaran dari sistem adalah dua buah LED yang berbeda warna. Warna Hijau untuk “YA” (pembacaan data selesai) dan sebaliknya warna merah untuk “TIDAK” (pembacaan data salah atau tidak selesai). Kedua LED dihubungkan langsung pada port mikrokontroler

Gambar 3.10. Iindikator LED pada mikrokontroler

3.10. Perancangan Software (perangkat lunak)

System pembacaan barcode agar dapat bekerja dengan baik perlu adanya perangkat lunak / software yang sesuai. Perancangan software dibuat dengan penyesuaian terhadap rancangan hardware. Hal ini dilakukan karena penyesuaian pada software akan lebih mudah dilakukan daripada penyesuaian terhadap hardware. Software pada Atmel AT89S51 digunakan bahasa pemograman assembly. Untuk

(54)

mempermudah dalam pembuatan program maka harus dibuat terlebih dahulu diagram alirnya (flowchart).

3.10.1 Algoritma Keseluruhan Sistem kerja

Secara garis besar, keseluruhan dari sistem kerja barcode reader adalah membedakan ketebalan dari tiap bar atau space dari barcode. Bar atau space tebal dibaca sebagai logika satu dan yang tipis dibaca sebagai logika 0. Sensor pembaca barcode digerakan oleh sebuah motor stepper agar dapat membaca kartua barcode dan dikonversikan menjadi logika digital. Dalam perancangan ini, motor stepper digerakan oleh sebuah penggarak tersendiri, sehingga mikrokontroler hanya mengendalikan kapan saat motor berputar atau berhenti serta mengendalikan arah putarannya. Berikut adalah algoritma dari sistem kerja barcode reader.

• Mulai

• Inisialisasi memori, timer dan port yang akan digunakan

• Menunggu adanya kartu barcode dimasukan

• Mengaktifkan motor stepper untuk menggerakkan sensor pembaca baecode

agar dapat melakukan pembacaan data pada kartu barcode

• Pengecekan apakah posisi sensor barcode berada pada posisi awal atau

tidak.

o Mengerakkan stepper motor berlawanan dengan arah jarum jam (ccw)

hingga sensor pembaca barcode menyentuk limit ccw

o Kembali ke awal program (mulai)

(55)

• Mengambil data dari sensor pembaca barcode

• Mengubah data yang telah diambil ke dalam bentuk ASCII

• Mengirim (menampilkan) data yang telah dikonversikan pada sistem

selanjutnya

• Mengaktifkan indikator LED

• Kembali ke program awal (mulai)

3.10.2.Flow Chart Program Utama

Program ini dimulai dari pengaktifan barcode reader pada setiap bus penumpang oleh operator. Kemudian pembacaan data pada barcode dilakukan. Kemudian data yang telah dibaca disimpan di IRAM sebagai tempat data sebelum dibandingkan. Setelah penyimpanan selesai maka mikrokontroler akan mengaktifkan indicator LED sebagai tanda bahwa pembacaan tiket selanjutnya bisa dilakukan.

(56)

TUNGGU TIKET DI AKSES

ADA TIKET?

KARAKTER SELESAI DIBACA?

BACA

INDIKATOR LED MENYALA

SIMPAN DATA DI IRAM

SELESAI START

TIDAK

YA YA

TIDAK

Gambar 3.11. Flow Chart Program Utama

3.10.3 Flow Chart Pembacaan Barcode 128

Pada Atmel AT89S51, pembacaan Barcode reader dimulai dari pembacaan apakah ada kartu yang masuk. Saat kartu menutup sensor optocoupler, sensor akan mengirim logika 1 ke Atmel AT89S51 sebagai tanda bahwa ada kartu yang masuk, Stepper Motor akan mulai menggerakkan Barcode dan sersor Barcode reader akan bersiap-siap melakukan pembacaan data. Atmel AT89S51 akan menghentikan pembacaan bila sensor optocoupler mengirimkan logika 0. data yang telah diambil oleh

(57)

sensor barcode akan di simpan dalam internal RAM dan diolah menjadi data ASCII. Kemudian mikrokontroler akan melakukan tunda waktu selama 5 detik sebelum melakukan pengaksesan kembali.

START

INISIALISASI ALAMAT ,REGISTER DAN TIMER

ADA MOTOR STEPPER MENGGERAKKAN

SENSOR OPTOCOUPLER (PEMBACA BARCODE)

UBAH DATA MENJADI DATA ASCII

Gambar 3.12. Flowchart Pembacaan Barcode 128

(58)

BAB IV

HASIL DAN PEMBAHASAN

Bab ini akan membahas hasil atau informasi dari data yang telah diambil dan pembahasan yang menyatakan bahwa alat yang telah dirancang bekerja dengan baik. Gambar 4.1 memperlihatkan bentuk fisik dari alat yang telah dirancang.

Gambar 4.1 bentuk fisik alat dilihat dari atas

Dari hasil dan pembahasan ini, diharapkan kelemahan dan kekurangan tentang alat yang dirancang ditemukan, sehingga dapat lebih disempurnakan serta dapat dimanfaatkan secara rill.

4.1 Pengamatan Alat

Pengamatan dilakukan terhadap barcode yang tedapat di tiket penumpang bus yang sudah dicetak. Gambar 4.2 menunjukan contoh tiket bus.

(59)

2509060128

Jam : 15.00

Tanggal : 25/09/2006 No. Kursi : 28

Tujuan : Yogya - Bali

Bus : 01

Nama : Jimmy G

Gambar 4.2 Barcode pada tiket penumpang armada APTIS

4.1.1. Tiket Barcode

Tiket barcode yang digunakan adalah kertas foto glossy yang dipakai sebagai tempat barcode. Jumlah module pada tiket barcode berjumlah 90 module. Spesifikasi dari tiket barcode dapat dilihat pada gambar 4.3. Batas awal (karakter STAR C) dan batas akhir (karakter STOP) pada kartu digunakan untuk mengetahui kapan barcode mulai dibaca dan kapan pembacaan harus diakhiri.

Gambar 4.3 spesifikasi tiket barcode

CHECK 11 module 5 karakter DATA

5 x 11 module

STOP 13

module

STAR C 11 module

2509060128

(60)

4.1.2. Proses Pembacaan Barcode

Pada gambar 4.3. dapat dilihat penempatan sensor barcode pada alat barcode reader yang dibuat.

Pertama-tama, sensor mendeteksi posisi awal. Bila limit CW tidak berlogika 0 (keadaan OFF), maka stepper motor akan menggerakkan sensor keposisi awal ( limit CW berlogika 1 atau keadaan ON). Selanjutnya akan menunggu ada atau tidaknya tiket. Bila tiket terdeteksi, sensor mulai melakukan pembacaan.

Foto diode

Gambar 4.3 peletakan sensor pembaca barcode

Dalam proses pembacaan, mikrokontroler akan membaca data mulai dari karakter STAR C (11 module), dilanjutkan dengan pengecekan 5 karakter DATA barcode (11 module x 5), karakter CHECK (11 module), karakter STOP (13 module).

Setelah pembacaan karakter STOP, sensor barcode terus bergerak hingga posisi akhir (limit CCW berlogika 0 atau keadaan ON) dan langsung kembali keposisi awal.

(61)

Dalam proses pembacaan, mikrokontroler hanya menyimpan hasil pembacaan dari karakter DATA. Hasil pembacaan karakter START C, karakter CHECK, karakter STOP tidak disimpan karena tidak diperlukan oleh proses selanjutnya. Sebagai contoh, untuk pembacaan barcode pada tiket gambar 4.4 terlihat data sebagai berikut :

2509060128

Gambar 4.4. Barcode

1. Data : 2509060128, di ubah sesuai dengan set karakter code set C pada tabel 2.1, sehingga menjadi 11 module :

25 = 321122 = 11100101100 09 = 221213 = 11001001000 06 = 122213 = 10011001000 01 = 222122 = 11001101100 28 = 322112 = 11100110100

2. Kemudian 11 module pertama diubah menjadi 2 byte. Begitu juga module-module berikutnya.

Byte 1

Byte 2

1 1 1 0 0 1 1 0 1 0 0 0 0 0 0 0

3. Setelah mikrokontroler selesai mengubah data menjadi 2 byte data tersebut diterjemahkan lagi menjadi data hexadecimal dengan rentang 00 – 99.

(62)

4. Setelah mikrokontroler selesai menterjemahkan, maka mikrokontroler akan segera mengirimkan semua data tersebut ke sistem berikutnya. Disini, mikrokontroler tidak perlu mengetahui apakah data yang dibaca benar atau salah. hal tersebut akan dibahas oleh sistem selanjutnya.

Dalam pembacaan karakter ke karakter berikutnya, mikrokontroler menghitung jumlah data apakah sejumlah 55 module. Bila telah membaca 55 module maka mikrokontroler menganggap bahwa semua karakter telah terbaca dan akan mengkonversikan data hasil pembacaan dalam bentuk ASCII sebelum dikirimkan ke mikrokontroler sejawat.

4.1.3 Pengiriman Data

Data yang dikirim mikrokontroler AT89S51 ke mikrokontroler AT89S8252 adalah berupa data heksadesimal yang jumlahnya 10 byte. Ketentuannya adalah byte pertama dan byte kedua menunjukkan tanggal, byte 3 dan byte 4 menunjukkan bulan. Byte 5 dan byte 6 menunjukkan tahun, byte 7 dan byte 8 menunjukkan kode bis, serta byte 9 dan byte 10 menunjukkan nomor kursi. Dengan menggunakan program simulasi instruksi dibawah ini akan menghasilkan keluaran yang bisa diamati. Instruksi:

KIRIMDATA:

CLR P2.5

DJNZ R7,$

MOV A,50H

CLR TI

MOV SBUF,A

JNB TI,$

SETB P2.5

(63)

Dengan instruksi tersebut, simulasi menghasilkan gambar 4.5 yang berisi byte – byte data.

Byte 1 dan

2 : Byte 5 dan 6 :

Gambar 4.5 Hasil pengamatan simulasi

4.2 Data Pengamatan

4.2.1 Data Pengamatan Perangkat Keras

¾ Tegangan keluaran dari sensor barcode

Keluaran dari sensor barcode dari hasil pengamatan tidak selalu sama. Hal ini dikarenakan photodiode selain menerima cahaya dari super brigth LED juga mendapatkan cahaya dari luar. Untuk melihat perubahan kondisi tegangan pada sensor, maka dilakukan pengamatan dengan 4 perbedaan itensitas cahaya lingkungan sekitar seperti pada table 4.1.

Byte 3 dan 4 :

Byte 9 dan 10 : Byte 7 dan 8 :

(64)

Tabel 4.1 perubahan keluaran dari sensor Kondisi

Lingkungan

Keluaran sensor saat membaca warna putih

Keluaran sensor saat membaca warna hitam

Terang 2,91 volt 1,87 Volt

Agak terang 3,05 volt 1,82 volt

Agak gelap 3,2 volt 1,77 volt

Gelap 3,42 volt 1,6 Volt

Dari hasil yang dapat dilihat pada tabel 4.1, maka diperlukan juga perubahan tegangan referensi untuk setiap kondisi. Perubahan ini didapatkan dengan menyesuaikan tegangan sensor barcode yaitu berada di antara tegangan keluaran saat membaca warna putih dan keluaran saat membaca warna hitam.

4.2.2 Data Pengamatan Stepping Motor

Barcode yang dibaca memiliki 90 module dan lebar setiap module bar/space terkecil sebesar 0,057cm. Dari hasil pengamatan, untuk 90 module (bar+space) stepper motor melakukan stepping sebanyak 230 step, maka setiap module bar/space sharus ditempuh sebanyak 2.5 step. Maka dalam pemogramannya, mikrokontroler mendeteksi lebar barcode dengan range sebagai berikut:

• 1 – 3 step = 1 module (bar/step)

• 4 – 5 step = 2 module (bar/step)

(65)

• 6 – 7 step = 3 module (bar/step)

• Di atas 7 step = 4 module (bar/step)

4.3. Kesalahan Pembacaan

Kesalahan pada proses pembacaan dapat disebabkan antara lain oleh:

• Saat mikrokontroler selesai membaca 1 bar atau space dan melakukan proses

looping (mikrokontroler tidak membaca barcode) untuk pembacaan berikutnya, motor stepper tetap berputar sehingga sensor juga akan terus bergerak.

• Sensor barcode kurang sensitif dalam proses pembacaan mendeteksi bar / space.

(66)

BAB V

KESIMPULAN DAN SARAN

5.1. Kesimpulan

Dari pengamatan terhadap hasil akhir barcode reader diperoleh kesimpulan:

1. Meskipun hasil dari pembacaan barcode reader tidak diketahui benar atau salahnya, tetapi proses pembacaan dan pengiriman data sudah dapat dilakukan.

2. Sistem pada unit pembaca barcode ini memiliki kelemahan pada perangkat keras sistem sensornya. Hal ini dikarenakan kurang mampunya sensor barcode dalam pembacaan kode barcode

5.2. Saran

Alat hasil perancangan ini masih memiliki banyak kekurangan dan keterbatasan pada perangkat keras dan perangkat lunaknya, sehingga penulis mencoba memberikan saran-saran untuk pengembangan lebih lanjut agar lebih baik, yaitu:

1. Untuk pengembangannya alat ini dapat lebih baik lagi jika dapat menampilkan nilai atau karakter dari barcode melalui LCD ataupun monitor.

2. Karena system ini sangat berpengaruh pada kinerja Sistem Identifikasi Tiket Penumpang Otomatis, maka kerjasama antara sub-sistem – sub-sistem harus lebih ditingkatkan dalam segala hal yang menujang keberhasilan. Di waktu yang akan datang akan lebih baik bila pendampingan dilaksanakan sesering mungkin

(67)

Gambar

Tabel 2.1 Set karakter Code 128
Tabel 2.1. (Lanjutan) Set karakter code 128
Tabel 2.1. (Lanjutan) Set karakter code 128
Tabel 2.1. (Lanjutan) Set karakter code 128
+7

Referensi

Dokumen terkait

Jika jari-jari kelengkungan 5π cm ( µo = 4π x 10-7Wb/Am), maka induksi magnetik di P adalah ….. Perhatikan gambar di samping. Besar dan arah gaya persatuan panjang yang bekerja

Kedua, dengan adanya istilah &#34;bunga&#34; maka dengan demikian sejumlah uang tertentu pada saat ini (sekarang) akan bertambah menjadi jumlah yang lebih besar pada waktu yang

Strategi Potongan harga 10% yang digunakan untuk meningkatkan penerimaan perusahaan dari pelanggan dapat diterapkan pada kelas pertama dan kedua yaitu Most Valuable

bahwa sesuai dengan ketentuan Pasal 10 dalam Undang- Undang Nomor 43 Tahun 2007 tentang Perpustakaan Pemerintah Daerah telah diberikan kewenangan untuk membuat

Dengan melakukan analisis sikap konsumen atas kualitas layanan jasa transportasi pada PO IMI diharapkan dapat mengembangkan strategi dan kebijakan bauran pemasaran yang tepat

Berdasarkan hasil penelitian yang telah dilakukan di kelompok B RA PSM Banjarsari Kecamatan Ngronggot Kabupaten Nganjuk, maka dapat disimpulkan bahwa penerapan

Gambar 11.6 memperlihatkan rangkaian untuk memperoleh panjar umpan-balik kolektor. Rangkaian ini tidak dapat menetapkan C I dengan C baik, tetapi paling tidak dapat menjamin bahwa

Kepuasan kerja diartikan sebagai kesenangan atau keadaan emosi yang positif yang dihasilkan dari penilaian pekerjaan atau pengalaman kerja seseorang (Locke