Perancangan Dan Implementasi Pemanggil Nomor Antrian Berbasis Mikrokontroler AT89S52 Dan ISD 25120

(1)

iv ABSTRAK

Perusahaan atau organisasi yang bergerak pada bidang jasa pasti akan sangat membutuhkan manajemen operasional untuk membuat sistem yang lebih baik dari sistem yang sebelumnya sudah dipakai. Salah satu masalah yang perlu diperhatikan dalam kegiatan usaha adalah masalah antrian.

Penelitian ini ditujukan untuk para konsumen, agar antrian dapat lebih terkendali dan teratur. Kinerja dari sistem antrian ini lebih cepat dan dari segi biaya pembuatan alat ini menjadi lebih murah dari pada teller-teller yang sudah ada seperti sekarang ini. Perancangan dan implementasi pemanggil nomor antrian berbasis mikrokontroler AT89S52 dirancang menggunakan tombol teller sebagai penggerak terhadap sebuah display counter, tiga buah display nomor urut antrian, sebuah display teller yang menggunakan seven segment dan keluaran suara menggunakan IC ISD25120, mikrokontroler AT89S52 sebagai penerima dan pengirim data, IC Multiplexer SN74150N sebagai penyeleksian tombol, IC Demultiplexer 74HC154N mengatur masukan, penyesuaian tegangan menggunakan Photocoupler 2501.

Hasil dari Perancangan dan implementasi pemanggilan nomor antrian berbasis mikrokontroler AT89S52 ini adalah pada arah tombol ke mikrokontroler AT89S52, semua tombol telah berhasil diseleksi berdasarkan tombol yang ditekan. Sehingga dapat ditentukan counter, nomor antrian dan teller. Pada arah mikrokontroler AT89S52 ke demultiplexer, mikrokontroler AT89S52 mengirimkan data ke demultiplexer berdasarkan data dari multiplexer. Hasil yang didapat pada display seven segment sesuai dengan input yang diberikan dari demultiplexer. Pada arah mikrokontroler AT89S52 ke IC ISD25120, mikrokontroler AT89S52 akan memanggil alamat-alamat pada IC ISD25120 sesuai dengan input dari tombol yang sudah diseleksi oleh multiplexer. Hasilnya suara yang keluar sesuai dengan tampilan yang ada pada seven segment.


(2)

v ABSTRACT

Companies or organizations engaged in the service sector would have very need of operational management to create a better system than the system previously used. One of the problems that need attention in business activities is the issue queue.

This study aimed at consumers, so that queues can be more controlled and orderly. Performance of the queuing system is faster and the cost of making these tools become cheaper than the teller, the teller who was there as it is today. Design and implementation of dialing queue-based microcontroller AT89S52 designed using the teller as a driver of a display counter, three displays the serial number of the queue, a teller display that uses a seven segment and use the sound output IC ISD25120, AT89S52 microcontroller as a receiver and sender of data, multiplexer IC SN74150N as a selection button, demultiplexer IC 74HC154N set input, voltage adjustment using Photocoupler 2501.

Results from Design and implementation of dialing queue-based microcontroller AT89S52 is on the button to the microcontroller AT89S52, all keys have been successfully selected based on which button is pressed. So it can be determined counter, a queue number and teller. On the way to the demultiplexer microcontroller AT89S52, AT89S52 microcontroller sends data to the demultiplexer based on data from the multiplexer. The results obtained on the seven segment displays in accordance with the given input from the demultiplexer. At the direction of the IC ISD25120 microcontroller AT89S52, AT89S52 microcontroller will call addresses to the IC ISD25120 in accordance with input from buttons that have been selected by the multiplexer. The result is sound that comes out in accordance with the view that there is the seven segment Keywords : Mikrokontroler AT89S52, IC ISD 25120, Queue.


(3)

1

BAB I

PENDAHULUAN

Pada bab ini akan dibahas tentang latar belakang masalah, maksud dan tujuan, batasan masalah, metode penelitian dan sistematika penulisan.

1.1. Latar Belakang Masalah

Perusahaan atau organisasi sangat memerlukan manajemen operasional dalam menjalankan kegiatan usahanya. Hal ini diperlukan untuk memperbaiki kinerja produktivitasnya. Sehingga akan mendapatkan keputusan yang efektif bagi perusahaan atau organisasi tersebut.

Perusahaan atau organisasi yang bergerak pada bidang jasa pasti akan sangat membutuhkan manajemen operasional untuk membuat sistem yang lebih baik dari sistem yang sebelumnya sudah dipakai. Salah satu masalah yang perlu diperhatikan dalam kegiatan usaha adalah masalah antrian. Antrian panjang sering sekali terlihat pada kasir di supermarket, transaksi di teller pada sebuah bank, pembelian tiket kereta api, dan lain lain. Pada antrian tersebut akan terlihat para konsumen akan kurang nyaman karena merasa waktunya terbuang hanya untuk mengantri. Bahkan banyak pula konsumen yang meninggalkan antrian tersebut karena terlalu panjang dan lama. Hal ini sangat merugikan perusahaan atau organisasi karena kurang efektif dalam kinerjanya.

Untuk mempertahankan konsumen agar merasa nyaman saat mengantri, perusahaan atau organisasi harus memberikan pelayanan yang terbaik kepada konsumennya. Maka perusahaan atau organisasi membutuhkan sistem antrian yang cepat dan efektif. Dalam menyelesaikan masalah tersebut memang akan membutuhkan biaya, akan tetapi hal itu diperlukan untuk memperbaiki citra pelayanan di mata konsumennya. Karena dengan adanya alat sistem antrian akan membuat konsumen merasa nyaman dalam antrian.

Perancangan teller berbasis mikrokontroler pada tugas akhir ini akan mengupas mengenai rangkaian paling sederhana sistem antrian teller yang hanya


(4)

2 menggunakan tombol teller sebagai penggerak terhadap sebuah display counter, tiga buah display nomor urut antrian, sebuah display teller yang menggunakan seven segment dan keluaran suara menggunakan IC ISD25120, mikrokontroler AT89S52 sebagai penerima dan pengirim data, IC Multiplexer SN74150N sebagai penyeleksian tombol, IC Demultiplexer 74HC154N mengatur masukan, penyesuaian tegangan menggunakan Photocoupler 2501.

Jika dibandingkan dengan alat teller yang sudah ada, alat teller yang dibuat pada tugas akhir ini hanya menggunakan 1 buah mikrokontroler sebagai penggerak dari tombol ke display seven segment dan menjadikan biaya pembuatan menjadi lebih murah dan efisien.

1.2. Maksud dan Tujuan

Maksud dari dibuat alat antrian teller ini merancang teller antrian elektronik berbasis mikrokontroler untuk mengatur proses antrian. Tujuan memberikan pelayanan terhadap konsumen agar antrian dapat lebih terkendali dan teratur.

1.3. Batasan Masalah

Pada perancangan alat yang akan dibuat ini terdapat beberapa batasan masalah, yaitu:

A. Jumlah teller yang dibuat berjumlah 16 buah, yang terbagi 2 bagian : Counter A berjumlah 8 teller, Counter B berjumlah 8 teller.

B. Jumlah antrian teller dari 001 sampai dengan 999.

C. Mikrokontroler AT89S52 sebagai pengontrol input dan output.

D. IC Multiplexer SN74150N dan IC Demultiplexer 74HC154N sebagai penyeleksi input dan output.


(5)

3 1.4. Metodologi Penelitian

Metode yang digunakan dalam penyusunan tugas akhir ini adalah sebagai berikut:

a. Pengumpulan materi dan bahan pembuatan alat

Merupakan metode pengumpulan komponen-komponen dasar yang mendukung dalam perancangan sistem antrian teller.

b. Perancangan sistem

Hal ini dilakukan dengan merealisasikan pembuatan hardware dan

software. Berisikan pembuatan skematik rangkaian dan program

assembly.

c. Percobaan atau eksperimen

Percobaan yang dilakukan dengan membandingkan alat yang telah dirancang dengan alat yang telah ada dipasaran.

d. Pengujian alat keseluruhan

Dalam hal ini pembuktian kehandalan alat dan optimalisasi alat yang telah dirancang.

e. Analisis

Berisikan data-data hasil analisa dengan perbandingan secara teoritis dari alat yang telah dirancang.

f. Simpulan

Pengambilan data tahap akhir mengenai kelebihan dan kekurangan yang didapatkan pada alat yang telah dirancang.

g. Laporan

Setelah semua selesai dilakukan, dibuat laporan hasil penelitian yang telah dilakukan.

1.5. Sistematika Penulisan

Sistematika penulisan laporan yang akan dibuat terdiri dari beberapa bab dengan pokok-pokok permasalahannya. Adapun sistematikanya sebagai berikut :


(6)

4 BAB I PENDAHULUAN

Bab ini berisi latar belakang masalah, identifikasi masalah, maksud dan tujuan, metode penelitian, batasan masalah serta sistematika penulisan untuk mempermudah pembahasan pada bab-bab selanjutnya.

BAB II TINJAUAN PUSTAKA

Bab ini membahas teori-teori pendukung mengenai dasar-dasar dari perangkat yang digunakan dan cara pengaplikasian pada tugas akhir ini sehingga dapat memperjelas tentang alat yang akan dibuat.

BAB III PERANCANGAN

Bab ini menguraikan tentang perancangan perangkat keras dan perangkat lunak perancangan teller berbasis mikrokontroler.

BAB IV PENGUJIAN DAN PEMBAHASAN

Bab ini menguraikan tentang pengujian serta analisa kerja perangkat keras dan perangkat lunak pembuatan teller berbasis mikrokontroler yang dirancang.

BAB V KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan dari uraian pada bab sebelumnya dan saran-saran yang perlu diperhatikan untuk mendukung pengembangan selanjutnya.


(7)

5

BAB II

DASAR TEORI

Pada bab ini akan dibahas tentang Mikrokontroler AT89S52, ISD25120, Multiplexer SN74150N, Demultiplexer 74HC154N, Photocoupler 2501, Indikator seven segment, Antrian.

2.1. Mikrokontroler AT89S52

Mikrokontroler merupakan sistem komputer kecil yang biasa digunakan untuk sistem pengendali atau pengontrol yang dapat diprogram sesuai kebutuhan. Mikrokontroler AT89S52 memiliki 8KB Flash Programmable dan Erase Read

Only Memory (PEROM) didalamnya.

Mikrokontroler AT89S52 merupakan pengembangan dari mikrokontroler MCS-51. Mikrokontroler ini biasa disebut juga dengan mikrokontroler CMOS 8 bit dengan 8 Kbyte yang dapat diprogram sampai 1000 kali pemograman. Selain itu AT89S52 juga mempunyai kapasitas RAM sebesar 256 bytes, 32 saluran I/O, Watchdog timer, dua pointer data, tiga buah timer/counter 16-bit, programmable UART (Serial Port). Memori Flash digunakan untuk menyimpan perintah (instruksi) berstandar MCS-51, sehingga memungkinkan mikrokontroler ini bekerja sendiri tanpa diperlukan tambahan chip lainnya (single chip operation), mode operasi keping tunggal yang tidak memerlukan external memori dan memori flashnya mampu diprogram hingga seribu kali. Hal lain yang menguntungkan adalah sistem pemograman menjadi lebih sederhana dan tidak memerlukan rangkaian yang rumit.

Sebuah mikrokontroler dapat berfungsi/bekerja apabila telah terisi oleh program. Program terlebih dahulu dimasukan kedalam memori sesuai dengan kebutuhan penggunaan pengontrol yang diperlukan dan yang hendak dijalankan. Program yang dimasukan kedalam mikrokontroler Atmel 89S52 adalah berupa file heksa (Hex File), dan program tersebut berisikan instruksi atau perintah untuk menjalankan sistem kontrol.

Mikrokontroler merupakan single chip computer yang memiliki kemampuan untuk diprogram dan digunakan untuk tugas-tugas yang berorientasi


(8)

6 kontrol, mikrokontroler berkembang dengan dua alasan utama, yaitu kebutuhan pasar (market needed) dan perkembangan teknologi baru. Dalam perkembangannya sampai saat ini, sudah banyak produk mikrokontroler yang telah diproduksi oleh berbagai perusahaan pembuat IC (Integrated Circuit) diantara salah satunya adalah jenis mikrokontroler yang digunakan dalam perancangan alat ini yaitu mikrokontroler seri 8052 yang dibuat oleh ATMEL, dengan kode produksi AT89S52. Secara fisik, mikrokontroler AT89S52 mempunyai 40 pin, 32 pin diantaranya adalah pin untuk keperluan port masukan/keluaran. Satu port paralel terdiri dari 8 pin, dengan demikian 32 pin tersebut membentuk 4 buah port paralel yang masing-masing dikenal dengan Port0, Port1, Port2 dan Port3. Dengan keistimewaan tersebut, perancangan dengan menggunakan mikrokontroler AT89S52 menjadi lebih sederhana dan tidak memerlukan komponen pendukung yang lebih banyak lagi.

2.1.1 Deskripsi Pin

Mikrokontroler AT89S52 memiliki 40 kaki dan 32 kaki. Diantaranya merupakan port paralel yang terdiri dari port P0, P1, P2 dan P3 yang masing-masing memiliki 8 port. Konfigurasi pin dapat dilihat pada gambar 2.1.

Gambar 2.1. Konfigurasi Pin Mikrokontroler AT89S52 Adapun nama dan fungsi dari setiap pin pada mikrokontroler AT89S52:

a. Port P0 (pin 39 sampai dengan pin 32)

Port P0 berfungsi sebagai I/O (Input/ Output) biasa atau low order

multiplex address data (menerima kode byte pada saat flash


(9)

7 memberikan output sink ke delapan buah TTL input atau dapat diubah sebagai input dengan memberikan logika 1 pada port tersebut. Pada fungsi sebagai low order multiplex address data, port ini akan mempunyai internal pull up terutama pada saat verifikasi program.

b. Port P1 (pin 1 sampai dengan pin 8)

Port P1 berfungsi sebagai I/O biasa atau menerima low order

address bytes pada saat flash programming. Port ini mempunyai

internal pull up dan berfungsi sebagai input dengan memberikan output sink keempat buah input TTL.

c. Port P2 (pin 21 sampai dengan pin 28)

Port P2 berfungsi sebagai I/O biasa atau high order address, pada saat mengakses memori secara 16 bit (Movx @DPTR). Pada saat mengakses memori secara delapan bit, (Mov @Rn), port ini akan mengeluarkan isi dari P2 Special Function Register (SFR). Port ini mempunyai internal pull up dan berfugsi sebagai input dengan memberikan logika 1. Sebagai output, port ini dapat memberikan output sink keempat buah input TTL.

d. Port P3 (pin 10 sampai dengan pin 17)

Port P3 berfungsi sebagai I/O biasa, Port P3 mempunyai sifat yang sama dengan port P1 dan port P2, sedangkan fungsi spesial dari port-port P3 dapat dilihat pada tabel 2.1.

Tabel 2.1. Fungsi-Fungsi Alternatif pada Port 3

Pin Port Nama Fungsi

Pin 10 P3.0 RXD Port serial input Pin 11 P3.1 TXD Port serial output Pin 12 P3.2 INT0 Port External Interupt 0 Pin 13 P3.3 INT1 Port External Interupt 1 Pin 14 P3.4 T0 Port external timer 0 input Pin 15 P3.5 T1 Port external timer 1 input

Pin 16 P3.6 WR External Data Memori writer strobe Pin 17 P3.7 RD External Data Memori read strobe


(10)

8 e. Pin 9

Pin 9 atau RST (Reset). Jika pada pin ini diberi input “1” (high) selama minimal 2 machine cycle, maka sistem akan di-reset dan register internal AT89S52 akan berisi nilai default tertentu. Proses reset merupakan proses untuk mengembalikan sistem kekondisi semula. Reset tidak mempengaruhi internal program memori. Reset terjadi jika pin RST bernilai high selama minimal dua siklus lalu kembali bernilai low. Power on reset merupakan proses reset yang berlangsung secara otomatis pada saat sistem pertama kali diberi suplai. Proses ini mempengaruhi semua register dan internal data memori. Untuk mendapatkan proses ini, maka pin RST harus diberi tambahan rangkaian seperti pada gambar 2.2.

Gambar 2.2. Rangkaian Reset AT89S52 f. Pin 18 dan 19

Pin 18 dan 19 atau Pin XTAL untuk output oscillator. g. Pin 20

Pin 20 berfungsi sebagai ground dari mikrokontroler AT89S52. h. Pin 29

Pin 29 atau PSEN berfungsi pada saat mengeksekusi program yang terletak pada memori eksternal. PSEN akan aktif dua kali setiap


(11)

9 i. Pin 30

Pin 30 atau ALE dapat berfungsi sebagai Address Latch Enable yang me-latch low byte address pada saat mengakses memori eksternal, sedangkan pada saat flash programming (PROG) berfungsi sebagai pulsa input untuk operasi normal, ALE akan mengeluarkan sinyal clock sebanyak 1/16 frekuensi oscillator kecuali pada saat mengakses memori eksternal sinyal clock pada pin ini dapat pula di

disable dengan mengeset bit 0 dari special function register di

alamat 8EH. ALE hanya akan aktif pada saat mengakses memori eksternal (MOVX dan MOVC).

j. Pin 31

Pin 31 atau EA pada kondisi low, pin ini akan berfungsi sebagai EA yaitu mikrokontroler akan menjalankan program yang ada pada memori eksternal setelah sistem direset. Jika berkondisi high, pin ini akan berfungsi untuk menjalankan program yang ada pada memori internal. Pada saat flash programming pin akan mendapat tegangan 12 volt (VP).

k. Pin 40

Pin 40 berfungsi sebagai VCC pada mikrokontroler AT89S52.

l. On-chip osillator

AT89S52 telah memiliki on-chip oscillator yang dapat bekerja jika

drive menggunakan kristal. Tambahan kapasitor diperlukan untuk

menstabilkan sistem. Nilai kristal yang bisa digunakan pada AT89S52 ini adalah 12 MHz. On-chip oscillator tidak hanya dapat

di-drive dengan menggunakan kristal, tetapi juga dapat dengan

menggunakan TTL Oscillator.

2.1.2. Struktur Memori

Struktur memori pada mikrokontroler AT89S52 dapat dilihat pada gambar 2.3.


(12)

10 Gambar 2.3. Alamat RAM Interal dan Flash PEROM

RAM internal, memori sebesar 256 byte yang biasanya digunakan untuk menyimpan variabel atau data yang bersifat sementara.

AT89S52 mempunyai struktur memori yang terpisah antara RAM internal dan Flash PEROM. RAM internal dialamati oleh RAM Address Register

sedangkan Flash PEROM yang menyimpan instruksi-instruksi MCS51 yang dialamati oleh Program Address Register. RAM internal terdiri atas:

a. Register Banks

AT89S52 mempunyai 8 buah register dari R0 hingga R7. Register

register tersebut selalu terletak pada alamat 00H hingga 07H pada setiap kali direset. Posisi R0 hingga R7 dapat dipindah ke Bank 1

(08H hingga 0FH), Bank 2 (10H hingga 17H), Bank 3 (18H hingga 1FH) dengan mengatur bit RS0 dan RS1.

b. Bit Addressable RAM

RAM pada alamat 20H hingga 2FH dapat diakses secara pengalamatan bit, sehingga hanya sebuah instruksi setiap bit dapat di

set, clear, AND dan OR.

c. RAM keperluan umum

RAM pada alamat 30H hingga 7FH dapat diakses dengan pengalamatan langsung maupun tak langsung.

Special Function Register (SFR) Memori yang berisi register-register yang

mempunyai fungsi-fungsi khusus yang disediakan oleh mikrokontroler seperti

timer, serial dan lain-lain. Special Function Register (SFR) yang dimiliki oleh

7FF

000 80

7F 00 FF

RAM ADDRESS REGISTER

SPECIAL FUNCTION

REGISTER RAM INTERNAL

FLASH PEROM

PROGRAM ADDRESS REGISTER


(13)

11 AT89S52 sebanyak 21 SFR yang terletak pada alamat 80H hingga FFH. Beberapa dari SFR mampu dialamati dengan pengalamatan bit.

Flash PEROM Memori yang digunakan untuk menyimpan

instruksi-instruksi MCS-51 dialamati oleh Program Address Register (Register Alamat Program). AT89S52 memiliki 8 Kb Flash PEROM yang menggunakan Atmel’s

High-Density Non Volatile Technology.

Program yang ada pada Flash PEROM akan dijalankan jika pada saat sistem di-reset, pin EA/VP berlogika satu maka mikrokontroler aktif berdasarkan program yang ada pada Flash PEROM-nya. Namun jika pin EA/VP berlogika nol, mikrokontroler aktif berdasarkan program yang ada pada memori eksternal.

2.1.3. Timer Mikrokontroler AT89S52

AT89S52 mempunyai dua buah timer, yaitu Timer 0 dan Timer 1, setiap

timer terdiri dari 16 bit timer yang tersimpan dalam dua buah register yaitu THx

untuk Timer High Byte dan TLx untuk Timer Low Byte yang keduanya dapat berfungsi sebagai counter maupun sebagai timer. Perbedaan terletak pada sumber

clock dan aplikasinya.

Jika timer mempunyai sumber clock dengan frekuensi tertentu yang sudah pasti sedangkan counter mendapat sumber clock dari pulsa yang hendak dihitung jumlahnya. Aplikasi dari counter atau penghitung biasa digunakan untuk aplikasi menghitung jumlah kejadian yang terjadi dalam periode tertentu sedangkan timer

atau pewaktu biasa digunakan untuk aplikasi menghitung lamanya suatu kejadian yang terjadi. Perilaku dari register THx dan TLx diatur oleh register TMOD dan

register TCON. Timer dapat diaktifkan melalui perangkat keras maupun

perangkat lunak. Register-register yang digunakan untuk pengaturan timer, yaitu:

1. Timer Mode Register (TMOD) di alamat 89H

Pada register TMOD terdapat 4 bit pertama untuk setting Timer 0 dan 4 bit berikutnya untuk settingTimer 1.


(14)

12

MSB LSB

Gate(1) C/T(1) M1(1) M0(1) Gate(0) C/T(0) M1(0) M0(0)

TIMER 1 TIMER 0

Gambar 2.4. Register TMOD Keterangan:

1. Gate : Timer akan berjalan bila bit ini set dan INT0 (untuk Timer 0) atau INT1 (untuk Timer 1) berkondisi high.

2. C/T : 1 = Counter dan 0 = Timer.

3. M1 & M0 : Untuk memilih mode timer.

Untuk pemilihan mode timer yang akan digunakan dapat dilihat pada tabel 2.2.

Tabel 2.2. ModeTimer

M1 M0 Mode Operasi

0 0 0 Timer 13 bit

0 1 1 Timer/counter 16 bit

1 0 2

Timer 8 bit di mana nilai timer tersimpan pada TLx. Register THx berisi nilai isi ulang yang akan dikirim ke TLx setiap overflow.

1 1 3

Pada mode ini, AT89S52 bagaikan memiliki 3 buah timer. Timer 0 terpisah menjadi 2 buah timer 8 bit (TL0 – TF0 dan TH0 – TF1) dan timer 1 tetap 16 bit.

THx dan TLx adalah register yang menunjukkan nilai dari Timer (x adalah nomor Timer). Masing-masing Timer mempunyai dua buah

register yaitu THx untuk high byte dan TLx untuk low byte.

TH0 : Timer 0 High Byte terletak pada alamat 8AH. TL0 : Timer 0 Low Byte terletak pada alamat 8BH. TH1 : Timer 1 High Byte terletak pada alamat 8CH. TL1 : Timer 1 Low Byte terletak pada alamat 8DH.

2. Timer Control Register (TCON)

Pengontrolan kerja timer/counter diatur oleh register TCON. Pada

register TCON hanya ada 4 bit yang mempunyai fungsi hubungan


(15)

13 TCON.7 TCON.6 TCON.5 TCON.4 TCON.3 TCON.2 TCON.1 TCON.0

TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0

Gambar 2.5. Register TCON Keterangan:

a. TCON.7 atau TF1 : Timer 1 Overflow Flag yang akan set bila

timer overflow. Bit ini dapat di clear oleh software atau

hardware pada saat program menuju ke alamat yang ditunjuk

oleh interrupt vector.

b. TCON.6 atau TR1 : 1 = Timer 1 aktif, 0 = Timer 1 non aktif. c. TCON.5 atau TF0 : Timer 1 Overflow Flag yang akan set bila

timer overflow. Bit ini dapat di clear oleh software atau

hardware pada saat program menuju ke alamat yang ditunjuk

oleh interrupt vector.

d. TCON.4 atau TR0: 1 = Timer 1 aktif, 0 = Timer 1 non aktif.

TLx THx : 12

On Chip Osc 12 Mhz

Tx

C/T

0 = Up 1 = Down

16 Bits

Gambar 2.6. Operasi Timer

Seperti yang telah disebutkan di atas, timer mempunyai dua sumber clock untuk beroperasi, yaitu sumber clock internal dan sumber clock eksternal. Jika

timer menggunakan sumber clock eksternal, maka bit C/T harus di-set atau

berkondisi high, saklar akan menghubungkan sumber clock timer ke pin Tx (To untuk Timer 0, T1 untuk Timer 1). Apabila sumber clock internal digunakan, input

clock berasal dari osilator yang telah dibagi 12, maka bit C/T harus di-clear atau

berkondisi low sehingga saklar akan menghubungkan sumber clock timer ke osilator yang telah dibagi 12.

2.2. ISD 25120

ISD 25120 adalah single chip dengan kualitas tinggi dengan durasi rekam atau putar ulang (Record Playback) antara 60 sampai 120 detik. Merupakan komponen CMOS yang terdiri atas on-chip oscilator, microphone amplifier,


(16)

14 automatic gain control, antialiasing filter, smoothing filter, speaker preamplifier, dan high density multi-level storage array. ISD 25120 mempunyai ciri – ciri sebagai berikut :

a. Single-chip mudah digunakan untuk merekam suara atau memutar ulang.

b. Kualitas suara atau audio yang dihasilkan tinggi dan tampak alami. c. Single-chip dengan durasi 120 detik.

d. Dapat digunakan dengan atau tanpa mikrokontroler.

e. Secara langsung merekam dengan durasi yang sangat panjang. f. Power down otomatis (mode push button).

g. Dapat dialamatkan secara langsung untuk mengatasi pesan panjang. h. Penyimpanan pesan selama 100 tahun.

i. Siklus perekaman 100.000 kali. j. Sumber clock 0n-chip.

k. Dapat diprogram untuk aplikasi putar ulang semata. l. Catu daya +5 volt.

Gambar 2.7. Diagram Blok

2.2.1. Deskripsi Pin ISD 25120

ISD 25120 mempunyai 28 kaki, 10 kaki diantaranya adalah kaki untuk keperluan alamat penyimpanan pesan, pin CE untuk meng-enable semua operasi perekaman atau mendengarkan pesan, pin P/R digunakan untuk proses perekaman


(17)

15 dan putar ulang pesan. Untuk lebih jelasnya konfigurasi pin ISD 25120 dapat dilihat pada gambar 2.8.

Gambar 2.8. Konfigurasi Pin ISD 25120

Nama dan fungsi dari kaki-kaki pin pada ISD 25120 adalah sebagai berikut : 1. AX (pin 1-10)

Address / mode input : Address mode input memiliki dua fungsi

bergantung pada level dari dua buah MSB dari pin – pin alamat (A8 dan A9). Jika salah satu atau kedua MSB dalam kondisi low semua masukan diinterprestasikan sebagai bit alamat dan digunakan sebagai alamat awal untuk siklus perekaman atau putar ulang. Jika kedua MSB dalam kondisi high, address mode input diinterprestasikan sebagai mode operasional (operational mode). Ada enam mode operasional dan memungkinkan menggunakan banyak mode operasi secara simultan.

2. AUX IN (pin 11)

Auxiliary Input : AUX IN digunakan untuk menghubungkan sinyal

playback dengan speaker.

3. Vssa, Vssd (pin 12, 13) Ground.

4. SP+ / SP- (pin 14, 15)

Speaker output : bagian yang mengeluarkan suara atau audio. Semua

komponen termasuk on-chip differential speaker driver, terbatas pada 15 mW sampai 16 ohm.


(18)

16 5. Vcca, Vccd (pin 16, 18)

Power Suply. 6. MIC (pin 17)

Microphone : mikrophone mentranfer sinyal menuju on-chip

Preamplifier, Rangkaian Automatic Gain Control (AGC) mengambil

gain preamplifier mulai dari -15 sampai 24 Db. 7. MIC REF (pin 18)

Microphone Reference : masukan MIC REF merupakan masukan

inverting untuk microphone preamplifier.

8. AGC (pin 19)

Automatic Gain Control : dengan adanya AGC dapat meminimalisi

distorsi suara yang direkam.

9. ANA IN (pin 20)

Analog Input : analog input mentransfer sinyal masukan

mikrophone. Pin ANA IN harus digabungkan dengan pin ANA OUT

melalui kapasitor eksternal. 10. ANA OUT (pin 21)

Analog output : Preamplifier output.

11. OUF (pin 22)

OverFlow : untuk mengindikasikan bahwa piranti rekam terisi penuh

dengan pesan. 12. CE (pin 23)

Chip Enable : pin CE diberi kondisi low untuk meng-enable semua

operasi perekaman atau putar ulang. 13. PD (pin 24)

Power Down : ketika sedang merekam atau memutar ulang hasil

rekaman pin PD harus kondisi high untuk menempatkan perangkat dalam mode standby.

14. EOM (pin 25)

End Of Message : untuk mengindikasikan bahwa perangkat sedang


(19)

17 15. XCLK (pin 26)

External Clock. 16. P/R (pin 27)

Playback / Record : pin ini digunakan untuk proses rekam atau putar

ulang.

2.2.2. Mode Operasional ISD25120

ISD 25120 dirancang dengan beberapa built-in mode operasional yang menyediakan kemampuan maksimum dengan komponen eksternal minimum. Mode operasional diakses melalui pin – pin alamat dan dipetakan diluar cakupan alamat pesan normal. Ketika media MSB, A8 dan A9 high, isyarat alamat ditafsirkan sebagai mode bit dan bukan sebagai bit alamat.

Ada dua hal yang perlu diperhatikan ketika menggunakan mode operasional. Pertama, semua operasi dimulai dengan alamat nol operasi selanjutnya dapat dimulai dari alamat lain tergantung mode operasi yang dipilih. Kedua, mode operasi dieksekusi ketika CE kondisi low.

2.2.3. Deskripsi Mode Operasional

Mode operasi dapat digunakan bersama dengan suatu mikrokontroler atau dapat di hardwired untuk menyediakan pengoperasian yang diinginkan. Ada beberapa macam mode operasi antara lain :

1. M0 – Pesan Isyarat (Message Cueing).

Pesan isyarat mengijinkan pemakai untuk melompat beberapa pesan, tanpa mengetahui fisik yang nyata mengenai alamat dari tiap pesan. Setiap CE kondisi low menyebabkan alamat internal ditujukan pada pesan berikutnya. Mode ini hanya digunakan untuk Playback saja. Dan sering digunakan bersama M4 mode operasi.

2. M1 – Hapus penanda EOM (Delete EOM markers).

Mode operasi ini mengijinkan secara sekuen perekam pesan untuk dikombinasikan kedalam satu pesan, dengan satu penanda EOM ditetapkan pada pesan terakhir.


(20)

18 4. M3 - Pengulangan Pesan (message looping).

Mode ini menghasilkan playback secara otomatis. Dilanjutkan dengan playback pesan yang dialokasikan pada permulaan alamat. Suatu pesan dapat sepenuhnya mengisi ISD 25120 dan akan berulang dari awal sampai akhir tanpa overflowlow.

5. M4 – Alamat berurutan (Consecutive addressing).

Selama operasi normal, penunjuk alamat akan mereset ketika suatu pesan dimasukan melalui suatu penanda EOM. Mode operasi ini menghalangi penunjuk alamat mereset lagi pada EOM. Menyebabkan pesan untuk diputar kembali dengan teratur.

6. M5 – Tingkat aktikan CE (CE level activated).

Mode ini menyebabkan pin CE ditafsirkan sebagai level activated selama proses playback. Ini bermanfaat untuk mengakhiri proses playback yang menggunakan sinyal CE.

7. M6 – Mode tombol (Push-button mode).

ISD 25120 berisi mode mode operasional tombol. Tombol tekan digunakan dalam mode operasi ini karena murah dan dirancang untuk memperkecil rangkaian dan komponen eksternal. Dalam mengatur mode operasional ini kedua MSB harus kondisi high dan pin mode M6 harus

high pula.

Dalam menggunakan mode operasional ini ada tiga pin yang mempunyai fungsi khusus seperti dijelaskan dalam tabel 2.3.

Tabel 2.3. Fungsi Alternatif

Nama Pin Fungsi alternatif mode push-button

CE Start / pause tombol tekan ( LOW pulse – activated ) PD Start / reset tombol tekan ( HIGH pulse – activared ) EOM Active HIGH run indikator

8. CE (Start/pause).

Dalam mode operasional push-button, CE berperan sebagai pulsa aktif low

untuk sinyal start / pause.

9. PD (stop/reset).


(21)

19

10.EOM (Run).

Dalam mode operasi push-button, EOM menjadi sinyal aktif high yang bisa digunakan untuk menghidupkan Led atau perangkat eksternal lainnya.

2.3. Multiplexer SN74150N

Multiplexer (Mux) adalah suatu komponen elektronika yang fungsinya adalah sebagai penyeleksi data berdasarkan perintah untuk menampilkan data yang diinginkan. Jadi singkatnya multiplexer memiliki banyak input data tetapi hanya memiliki sebuah output dan memiliki bagian input pengontrol. Jadi, melalui bagian input pengontrol inilah penulis dapat menampilkan data input yang dikehendaki.

Salah satu contoh IC mux yang akan digunakan adalah IC SN74150N. IC tersebut merupakan IC multiplexer 16 ke 1. Artinya adalah IC tersebut memiliki 16 input data dengan 1 output. karena input datanya ada 16, maka input pengontrolnya otomatis ada 4 (4bit). Alasannya karena jangkauan nilai dari 4 bit data adalah 0 (0000) hingga 15 (1111). Konfigurasi pin multiplexer IC SN74150N dapat dilihat pada gambar 2.9.


(22)

20 Tabel 2.4.Logika Kebenaran Mux 16 ke 1 (strobe = output enable, H=1, L=0)

Input Output

W Select

Strobe S

D C B A

x x x x 1 1

0 0 0 0 0 E0

0 0 0 1 0 E1

0 0 1 0 0 E2

0 0 1 1 0 E3

0 1 0 0 0 E4

0 1 0 1 0 E5

0 1 1 0 0 E6

0 1 1 1 0 E7

1 0 0 0 0 E8

1 0 0 1 0 E9

1 0 1 0 0 E10

1 0 1 1 0 E11

1 1 0 0 0 E12

1 1 0 1 0 E13

1 1 1 0 0 E14

1 1 1 1 0 E15

Dari tabel 2.4 tentunya sudah dapat memahami bagaimana cara kerja dari sebuah IC multiplexer. Contohnya adalah apabila ingin menampilkan data pada output E13 (ditampilkan pada output W), maka pada strobe/OE harus diberi logika 0 dan pada input pengontrol (D,C,B,A) diberi nilai logika 1101 (D=1,C=1, B=0, A=1). Jika S mewakili saluran strobe, maka berdasarkan tabel kebenaran tersebut keluaran Mux dapat dinyatakan sebagai berikut :

W = S . E0. S1 . S2. S3. S4 + S . E1. S1 . S2. S3. S4 + S . E2. S1 . S2. S3. S4 + S . E3. S1.

S2. S3. S4 + S . E4. S1 . S2. S3. S4 + S . E5. S1 . S2. S3. S4 + S . E6. S1 . S2. S3. S4 +

S . E7. S1 . S2. S3. S4 + S . E8. S1 . S2. S3. S4 + S . E9. S1 . S2. S3. S4 + S . E10. S1

. S2. S3. S4 + S . E11. S1 . S2. S3. S4 + S . E12. S1 . S2. S3. S4 + S . E13. S1 . S2.

S3. S4 + S . E14. S1 . S2. S3. S4 + S . E15. S1 . S2. S3. S4

Terlihat bahwa semua keluaran memerlukan masukan S. Dengan demikian, berdasarkan persamaan-persamaan logika keluaran Mux, dapat disusun rangkaian logika mux 16 ke 1 seperti yang ditunjukkan oleh gambar 2.10.


(23)

21 Gambar 2.10. Rangkaian Logika Multiplekser 16 ke 1

2.4. Demultiplexer 74HC154N

Demultiplekser (Demux) adalah suatu divais elektronik yang mampu menyalurkan sebuah sinyal masukan pada salah satu keluaran dari bayak saluran keluaran. Pemilihan keluaran dilakukan melalui masukan penyeleksi. Gambar 2.11 merupakan bagan kerja Demux.


(24)

22 Strobe

D

S1 S2 S3 S4

Gambar 2.11. Rangkaian Dasar Demultiplexer 74HC154N

Salah satu contoh IC Demux yang akan digunakan adalah IC 74HC154N. selektor pada Demux akan memilih saklar yang akan dihubungkan. Saluran selektor sebanyak „n‟ saluran dapat menyeleksi „2n‟ saluran keluaran.

Contoh : sebuah Demux 1 ke 16 dengan selektor S1, S2, S3 dan S4. ketika saluran

strobe = 1, keluaran selalu bernilai „1‟. Tetapi ketika saluran strobe = 0, keluaran F diatur melalui S1, S2, S3 dan S4. Tabel kebenaran Demux 1 ke 16 dapat dilihat

pada tabel 2.5.

F1 F0 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15


(25)

23 Tabel 2.5. Logika Kebenaran Demux 1 ke 16

Input Output (F)

Strobe S1 S2 S3 S4 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 x x x x 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 0 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 0 0 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0

Jika S mewakili saluran strobe, maka berdasarkan tabel kebenaran tersebut keluaran Demux dapat dinyatakan sebagai berikut :

F0 = S . Data . S1 . S2. S3. S4

F1 = S . Data . S1 . S2. S3. S4

F2 = S . Data . S1 . S2. S3. S4

F3 = S . Data . S1 . S2. S3. S4

F4 = S . Data . S1 . S2. S3. S4

F5 = S . Data . S1 . S2. S3. S4

F6 = S . Data . S1 . S2. S3. S4

F7 = S . Data . S1 . S2. S3. S4

F8 = S . Data . S1 . S2. S3. S4

F9 = S . Data . S1 . S2. S3. S4

F10 = S . Data . S1 . S2. S3. S4


(26)

24 F12 = S . Data . S1 . S2. S3. S4

F13 = S . Data . S1 . S2. S3. S4

F14 = S . Data . S1 . S2. S3. S4

F15 = S . Data . S1 . S2. S3. S4

Terlihat bahwa semua keluaran memerlukan masukan S. Dengan demikian, berdasarkan persamaan-persamaan logika keluaran Demux, dapat disusun rangkaian logika Demux 1 ke 16 seperti yang ditunjukkan oleh gambar 2.12.

Gambar 2.12. Rangkaian Logika Demultiplekser 1 ke 16

2.5. Photocoupler 2501

Photocoupler adalah suatu piranti yang terdiri dari 2 bagian yaitu

transmitter dan receiver, yaitu antara bagian cahaya dengan bagian deteksi


(27)

25 yang bekerja secara otomatis. photocoupler atau optoisolator merupakan komponen penggandeng (coupling) antara rangkaian input dengan rangkaian output yang menggunakan media cahaya (opto) sebagai penghubung. Dengan kata lain, tidak ada yang konduktif antara kedua rangkaian tersebut. Photocoupler sendiri terdiri dari 2 bagian, yaitu transmitter (pengirim) dan receiver (penerima) :

1. Transmitter (pengirim)

Merupakan bagian yang terhubung dengan rangkaian input atau rangkaian kontrol. Pada bagian ini terdapat sebuah LED infra merah (IR LED) yang berfungsi untuk mengirimkan sinyal kepada receiver. Pada transmitter dibangun dari sebuah LED infra merah. Jika dibandingkan dengan menggunakan LED biasa, LED infra merah memiliki ketahanan yang lebih baik terhadap sinyal tampak. Cahaya yang dipancarkan oleh LED infra merah tidak terlihat oleh mata telanjang.

2. Receiver (penerima)

Merupakan bagian yang terhubung dengan rangkaian output atau rangkaian beban, dan berisi komponen penerima cahaya yang dipancarkan oleh transmitter. Komponen penerima cahaya ini dapat berupa photodioda atapun phototransistor. Pada bagian receiver

dibangun dengan dasar komponen phototransistor. Phototransistor merupakan suatu transistor yang peka terhadap tenaga cahaya. Suatu sumber cahaya menghasilkan energi panas, begitu pula dengan spektrum infra merah. Karena spekrum infra mempunyai efek panas yang lebih besar dari cahaya tampak, maka phototransistor lebih peka untuk menangkap radiasi dari sinar infra merah.

Jika dilihat dari penggunaannya, photocoupler bisa digunakan untuk mengisolasi common rangkaian input dengan common rangkaian output. Sehingga supply tegangan untuk masing-masing rangkaian tidak saling terbebani dan juga untuk mencegah kerusakkan pada rangkaian kontrol (rangkaian input). Beberapa aplikasi photocoupler yang pernah ditemui diantaranya adalah :


(28)

26 a. Rangkaian driver motor DC sebagai driver rangkaian yang dikontrol oleh mikrokontroler sebagai driver rangkaian yang dikontrol oleh paralellel port komputer. Photocoupler yang biasanya dijumpai di toko-toko elektronik mempunyai seri 4N25, 4N33 dan 4N35.

b. Sensor cahaya (optocoupler) dan piringan sensor

Tujuan utama dari digunakan sensor cahaya dan piringan sensor adalah untuk mendapatkan data kecepatan putaran dari setiap roda. Piringan sensor yang digunakan dibuat dari negatif-film yang dijepit oleh dua buah acrylic transparan agar semakin presisi pembacaan datanya. Sedangkan sensor cahaya yang digunakan adalah optocoupler yang prinsip kerjanya adalah ketika ada benda yang berada di antara celah sensornya, maka cahaya yang dikirimkan tidak bisa diterima oleh bagian penerimanya, sehingga menghasilkan tegangan keluaran yang nilainya mendekati VCC, begitu juga sebaliknya, jika tidak ada benda diantara celah sensornya maka akan menghasilkan tegangan keluaran yang nilainya mendekati 0 Volt.

Photocoupler merupakan gabungan dari LED infra merah dengan fototransistor yang terbungkus menjadi satu chips. Cahaya infra merah termasuk dalam gelombang elektromagnetik yang tidak tampak oleh mata telanjang. Sinar ini tidak tampak oleh mata karena mempunyai panjang gelombang berkas cahaya yang terlalu panjang bagi tanggapan mata manusia. Sinar infra merah mempunyai daerah frekuensi 1 x 1012 Hz sampai dengan 1 x 1014 GHz atau daerah frekuensi dengan panjang gelombang 1µm – 1mm.

LED infra merah ini merupakan komponen elektronika yang memancarkan cahaya infra merah dengan konsumsi daya sangat kecil. Jika diberi prasikap maju, LED infra merah yang terdapat pada photocoupler akan mengeluarkan panjang gelombang sekitar 0,9 mikrometer.

Proses terjadinya pancaran cahaya pada LED infra merah dalam photocoupler adalah sebagai berikut. Saat dioda menghantarkan arus, elektron lepas dari ikatannya karena memerlukan tenaga dari catu daya listrik. Setelah elektron lepas, banyak elektron yang bergabung dengan lubang yang ada di


(29)

27 sekitarnya (memasuki lubang lain yang kosong). Pada saat masuk lubang yang lain, elektron melepaskan tenaga yang akan diradiasikan dalam bentuk cahaya, sehingga dioda akan menyala atau memancarkan cahaya pada saat dilewati arus. Cahaya infra merah yang terdapat pada photocoupler tidak perlu lensa unrtuk menfokuskan cahaya karena dalam satu chip mempunyai jarak yang dekat dengan penerimanya. Pada photocoupler yang bertugas sebagai penerima cahaya infra merah adalah fototransistor. Fototransistor merupakan komponen eletronika yang berfungsi sebagai detektor cahaya infra merah. Detektor cahaya ini mengubah efek cahaya menjadi sinyal listrik, oleh sebab itu fototransistor termasuk dalam golongan detektor optik.

Fototransistor memiliki sambungan kolektor-basis yang besar dengan cahaya infra merah, karena cahaya ini dapat membangkitkan pasangan lubang elektron. Dengan diberi prasikap maju, cahaya yang masuk akan menimbulkan arus pada kolektor.

Fototransistor memiliki bahan utama yaitu germanium atau silikon yang sama dengan bahan pembuat transistor. Tipe fototransistor juga sama dengan transistor pada umumnya yaitu PNP dan NPN. Perbedaan transistor dengan fototransistor hanya terletak pada rumahnya yang memungkinkan cahaya infra merah mengaktifkan daerah basis, sedangkan transistor biasa ditempatkan pada rumah logam yang tertutup. Simbol photocoupler dapat dilihat pada gambar 2.13.


(30)

28 Gambar Rangkaian Photocoupler :

Gambar 2.14. Rangkaian Photocoupler

Prinsip kerja dari rangkaian photocoupler adalah :

a. Jika S1 terbuka maka LED akan mati, sehingga phototransistor tidak akan bekerja.

b. Jika S1 tertutup maka LED akan memancarkan cahaya, sehingga phototransistor akan bekerja.

c. Jika antara phototransistor dan LED terhalang maka phototransistor tersebut akan off sehingga output dari kolektor akan berlogika high. d. Sebaliknya jika antara phototransistor dan LED tidak terhalang maka

phototransistor dan LED tidak terhalang maka phototransistor tersebut akan on sehingga output-nya akan berlogika low.

e. Ditinjau dari penggunaanya, fisik photocoupler dapat berbentuk bermacam-macam. Bila hanya digunakan untuk mengisolasi level tegangan atau data pada sisi transmitter dan sisi receiver, maka photocoupler ini biasanya dibuat dalam bentuk solid (tidak ada ruang antara LED dan phototransistor). Sehingga sinyal lisrik yang ada pada input dan output akan terisolasi. Dengan kata lain photocoupler ini digunakan sebagai optoisolator jenis IC.

f. Kerugian atau keburukan dari photocoupler adalah pada kecepatan switchingnya. Hal ini disebabkan karena efek dari area yang sensitif terhadap cahaya dan timbulnya efek kapasitansi pada `junction`-nya. Jika diperlukan kecepatan switching yang cukup tinggi maka


(31)

29 optoisolator harus dikonfigurasikan sehingga yang digunakan adalah sebagai photodiode-nya.

2.6. Indikator Seven Segment

Indikator Seven Segment adalah suatu komponen elektronika yang dapat menampilkan angka desimal dengan menyalakan/ aktifkan segment-segmentnya.

Indikator Seven Segment ada dua tipe, yaitu:

1. Tipe Common Anoda : semua kaki anoda terhubung. 2. Tipe Common Katoda : semua kaki katoda terhubung.

(a) (b) (c) Gambar 2.15. Seven Segment

(a) Merupakan tampilan seven segment dengan urutan segmentnya. (b) Salah satu bentuk indikator seven segment dengan urutan kaki-kakinya.

(c) Susunan LED pada seven segment dengan common anoda.

(a) (b) Gambar 2.16. Susunan Led pada Seven Segment

(a) Common Anoda, (b) Common Katoda

Gnd

a b c d e f g Vcc

a b c d e f a b c d e f g . . com. anoda com. anoda a b c d e f g a f b g c e d com. anoda


(32)

30 2.7. Antrian

Antrian yang panjang sering dilihat di bank pada saat nasabah mengantri

di teller untuk melakukan transaksi, airport saat para calon penumpang melakukan

check-in, di super market saat para pembeli antri untuk melakukan pembayaran, ditempat cuci mobil : mobil antri untuk dicuci dan masih banyak contoh lainnya. Disektor jasa, bagi sebagian orang antri merupakan hal yang membosankan dan sebagai akibatnya terlalu lama antri, akan menyebabkan konsumen kabur. Hal ini merupakan kerugian bagi organisasi tersebut.

Untuk mempertahankan konsumen, sebuah organisasi selalu berusaha untuk memberikan pelayanan yang terbaik. Pelayanan yang terbaik tersebut diantaranya adalah memberikan layanan yang cepat sehingga konsumen tidak dibiarkan menunggu (mengantri) terlalu lama. Namun demikian, dampak pemberian layanan yang cepat ini akan menimbulkan biaya bagi organisasi, karena harus menambah fasilitas layanan. Oleh karena itu, layanan yang cepat akan sangat membantu untuk mempertahankan konsumen, yang dalam jangka panjang tentu saja akan meningkatkan keuntungan perusahaan.

Ada tiga komponen dalam sistem antrian yaitu :

1. Kedatangan, populasi yang akan dilayani (calling population)

Karakteristik dari populasi yang akan dilayani (calling populasi) dapat dilihat menurut ukuran, pola kedatangan, serta perilaku dari populasi yang akan dilayani. Menurut ukurannya, populasi yang akan dilayani bisa terbatas (finite) bisa juga tidak terbatas (infinite). Sebagai contoh jumlah mahasiswa yang antri untuk registrasi disebuah perguruan tinggi sudah diketahui jumlahnya (finite), sedangkan jumlah nasabah bank yang antri untuk setor, menarik tabungan, maupun membuka rekening baru, bisa tak terbatas (infinite).

Pola kedatangan bisa teratur, bisa juga acak (random). Kedatangan yang teratur sering saya jumpai pada proses pembuatan/pengemasan produk yang sudah distandarisasi. Pada proses semacam ini, kedatangan produk untuk diproses pada bagian selanjutnya biasanya sudah ditentukan waktunya, misalnya setiap 30 detik. Sedangkan


(33)

31 pola kedatangan yang sifatnya acak (random) banyak dijumpai misalnya kedatangan nasabah di bank. Pola kedatangan yang sifatnya acak dapat digambarkan dengan distribusi statistik dan dapat ditentukan dua cara yaitu kedatangan persatuan waktu dan distribusi waktu antara kedatangan.

2. Antrian

Batasan panjang antrian bisa terbatas (limited) bisa juga tidak terbatas (unlimited). Sebagai contoh antrian dijalan tol masuk dalam kategori panjang antrian yang tidak terbatas. Sementara antrian dirumah makan, masuk kategori panjang antrian yang terbatas karena keterbatasan tempat. Dalam kasus batasan panjang antrian yang tertentu (definite line-length) dapat menyebabkan penundaan kedatangan antrian bila batasan telah tercapai. Contoh : sejumlah pesawat pada landasan telah melebihi suatu kapasitas bandara, kedatangan pesawat yang baru dialihkan ke bandara yang lain. 3. Fasilitas pelayanan

Karakteristik fasilitas pelayanan dapat dilihat dari dua hal yaitu : 1. Disiplin antrian

Ada dua klasifikasi yaitu prioritas dan first come first serve. Disiplin prioritas dikelompokkan menjadi dua, yaitu preemptive

dan non preemptive. Disiplin preemptive menggambarkan situasi

dimana pelayanan sedang melayani seseorang, kemudian beralih melayani orang yang diprioritaskan meskipun belum selesai melayani orang sebelumnya. Sementara disiplin non preemptive

menggambarkan situasi dimana pelayanan akan menyelesaikan pelayannya baru kemudian beralih melayani orang yang diprioritaskan. Sementara disiplin first come first serve

menggambarkan bahwa orang yang lebih dahulu datang akan dilayani terlebih dahulu.

Dalam kenyataan sering dijumpai kombinasi dari kedua jenis disiplin antrian tersebut, yaitu prioritas dan first come first serve. Sebagai contoh para pembeli yang akan melakukan pembayaran


(34)

32 di kasir untuk pembelian kurang dari sepuluh jenis barang (dengan keranjang) di super market disediakan counter tersendiri. 2. Waktu pelayanan

Waktu yang dibutuhkan untuk melayani bisa dikategorikan sebagai konstan dan acak. Waktu pelayanan konstan, jika waktu yang dibutuhkan untuk melayani sama untuk setiap konsumen. Sedangkan waktu pelayanan acak, jika waktu yang dibutuhkan untuk melayani berbeda-beda untuk setiap konsumen. Jika waktu pelayanan acak, diasumsikan mengikuti distribusi eksponensial.


(35)

33 BAB III

PERANCANGAN SISTEM

Pada bab perancangan sistem ini akan membahas tentang prinsip kerja sistem, perancangan perangkat keras, algoritma program mikrokontroler.

3.1 Prinsip Kerja Sistem

Dalam sistem ini, para nasabah mengambil kartu yang berisi nomor urut, kemudian menunggu sambil duduk santai di tempat yang telah tersedia sampai terdengar suara panggilan nomor urut. Selain itu, di teller terdapat display yang menunjukkan nomor urut yang akan dilayani. Keadaan ini terus berlangsung sampai nomor antrian terakhir.

Teller akan memberikan input dengan cara menekan tombol, maka input

tersebut akan diseleksi oleh IC Multiplexer SN74150N, kemudian input hasil seleksi dari multiplexer akan digunakan untuk menentukan teller yang telah menekan tombol. Hasil dari serangkaian proses tersebut adalah output suara dan display pada seven segment. Untuk menghasilkan output suara, digunakan IC ISD25120 untuk merekam dan memainkan suara. Untuk menghasilkan output suara yang tepat, mikrokontroler AT89S52 akan mengirimkan output data yang berupa alamat memory untuk memanggil suara-suara yang telah direkam pada IC ISD25120. Tampilan display sevent segment yang didapat merupakan hasil dari input yang diberikan dari mikrokontroler ke IC Demultiplexer 74HC154N. Output hasil seleksi dari demultiplexer akan menjadi input bagi photocoupler 2501. Photocoupler 2501 pada rangkaian ini digunakan sebagai penyesuai tegangan untuk mengkontrol transistor PNP C9012 yang akan memberi tegangan 12V yang dibutuhkan oleh seven segment. Adapun sistem yang dirancang dapat dilihat pada gambar 3.1.


(36)

34 Gambar 3.1. Perancangan Sistem Teller Berbasis Mikrokontroler

3.2 Perancangan Perangkat Keras

3.2.1. Mikrokontroler AT89S52

Jenis mikrokontroler yang digunakan adalah AT89C52 keluarga dari MCS-51 keluaran Atmel. Pada perancangan alat teller berbasis mikrokontroler, mikrokontroler digunakan untuk mengimplementasikan pengaturan data yang dikirim untuk ditampilkan pada seven segment dan pengaturan pengiriman data untuk memanggil alamat-alamat pada IC ISD25120 agar dapat menghasilkan output yang sesuai dengan input yang diberikan. Berikut ini pin-pin pada mikrokontroler AT89S52 yang digunakan:

Counter A

Tombol 9

Tombol 10

Tombol 16 Tombol 8

Tombol 2 Tombol 1

Mikrokontroler AT89S52 Multiplexer

SN74150N

Display seven segment Demultiplexer

74HC154N

Photocoupler 2501

ISD 25120

Speaker Amplifier


(37)

35 a. Port P0

Port P0.0 sampai dengan P0.7 (pin 39 sampai dengan pin 32) dan digunakan untuk mengirimkan input ke IC ISD25120 yang hasilnya akan mengalokasikan suara yang akan direkam ke alamat memori yang dikehendaki.

b. Port P1

Port P1.0 sampai dengan P1.3 (pin 1 sampai dengan pin 4) digunakan untuk mengirimkan output ke demultiplexer IC 74HC154N yang hasilnya memberikan output ABCD sebagai selektor.

c. Port P2

Port P2.0 sampai dengan P2.7 (pin 21 sampai dengan pin 28) digunakan untuk menghubungkan ke display seven segment.

d. Port P3

Port P3.0 sampai dengan P3.3 (pin 10 sampai dengan pin 13) digunakan untuk mengirimkan output ke multiplexer IC SN74150N yang hasilnya memberikan output ABCD sebagai selektor.

Port P3.5 sampai dengan P3.7 (pin 15 sampai dengan pin 17) digunakan untuk mengirimkan input ke pin CE, PD, EOM pada IC ISD25120 untuk proses perekaman.

Pin-pin di atas digunakan sebagai pin utama dalam perancangan, selain itu masih terdapat beberapa pin lainnya yang digunakan untuk keperluan khusus, misalnya pin untuk osilator, EA/VP, VCC, GND dan untuk reset seperti terlihat pada gambar 3.2.


(38)

36 Gambar 3.2. Rangkaian Minimum AT89S52

Pin EA/VP dihubungkan dengan VCC berfungsi untuk menjalankan program yang ada di memori internal dari AT89S52. Keterangan mengenai bagian osilator adalah sebagai berikut :

Osilator merupakan subsistem dari mikrokontroler yang berfungsi untuk membangkitkan clock pada mikrokontroler. Clock diperlukan oleh mikrokontroler untuk mensinkronkan proses yang sedang berlangsung dalam mikrokontroler. Rangkaian ini tersusun atas komponen kristal dan dua buah kapasitor. Frekuensi kristal yang biasa digunakan antara 6 sampai 24 MHz. Pada pembuatan alat ini digunakan kristal 11.0592 Mhz agar mempermudah perhitungan

baudrate komunikasi serial. Adapun kapasitor yang dapat

dipergunakan berdasarkan data sheet antara 20pF sampai 40pF untuk osilator yang menggunakan kristal. Kapasitor yang digunakan adalah jenis monocap bernilai 33 pF. Kapasitor jenis ini dipilih karena cocok untuk aplikasi frekuensi tinggi. Fungsi kapasitor adalah untuk menstabilkan osilasi yang dihasilkan oleh kristal. Penempatan


(39)

37 kristal dan kapasitor diusahakan sedekat mungkin dengan bagian mikrokontroler untuk menghindari kemungkinan terjadinya noise.

3.2.2. ISD 25120

Rangkaian penghasil suara ini menggunakan IC tipe ISD 25120 yang mempunyai kapasitas penyimpanan suara maksimum selama 120 detik, dimana A0 sampai A7 digunakan untuk mengisi dan memanggil alamat suara yang disimpannya.

Pada saat mengisi suara, pin P/R diberi logic low dan pin A0 – A7 untuk mengalokasikan suara yang akan direkam ke alamat memori yang dikehendaki. Kemudian pin CE diberi logic low, untuk start atau memulai perekaman suara melalui mikrophone jenis kondensor. Setelah selesai pengisian suara, pin PD diberi logic high untuk stop.

Untuk memanggil suara, pin P/R harus diberi logic high, kemudian alamat memori diberikan melalui pin A0 sampai A7. Selanjutnya pin CE diberi logic low, maka suara yang sudah direkam sebelumnya akan keluar melalui speaker. Setelah selesai pemutaran suara, pin PD diberi logic high untuk stop. Rangkaian suara ISD 25120 dapat dilihat pada gambar 3.3.


(40)

38 A. Pengalamatan Suara ISD 25120

Untuk mengetahui suara yang sudah direkam ada dialamat mana, dibuatlah alat pengalamatan suara. Dimana dialat tersebut dapat diatur alamat mana yang akan diisi suara yang dikehendaki. Supaya tidak terjadi penumpukan suara di suatu alamat tertentu, maka alamat suara dikasih jarak 13H antara suara satu ke suara lainnya. Setelah pengisian suara dialamat tertentu telah selesai, maka memudahkan mikrokontroler untuk memanggil suara yang di kehendaki.

Rangkaian Pengalamatan suara ini terdiri 3 bagian yaitu:

1. Rangkaian Mikrokontroler dengan menggunakan IC AT89S52 yang akan mengatur alamat yang akan di setting ke ISD Suara.

2. Rangkaian display seven segment dan tombol tekan yang terdiri dari 3 buah display seven segment sebagai penunjuk alamat yang akan di alamati ke ISD suara dan 4 buah tombol tekan terdiri dari tombol play/record, tombol stop, tombol alamat naik dan tombol alamat turun.

3. Rangkaian ISD Suara yang terdiri dari port pengalamatan, Mic input, dan tombol on/off untuk mode Record atau Play.

Cara kerja alat pengalamatan suara pada ISD secara keseluruhan pengendali utama dilakukan oleh mikrokontroller AT89S52. IC Mikrokonroler ini mengecek (scanning) tiap tombol satu persatu. Apabila ada tombol yang di tekan, Mikrokontroler akan melakukan tugasnya sesuai yang telah di program. Cara kerja alat pengalamatan suara pada ISD ini ada dua mode yaitu :

1. Mode Playback

Tombol ISD dilepas (off) akan di set ke mode PlayBack. Kemudian setting alamat dengan menekan tombol alamat Up/Down untuk data alamat yang akan dikirim ke port alamat ISD Suara. Apabila Tombol Play/Record

ditekan, Mikrokontrol P3.5 (CE) akan di set logic high dan P3.6 (PD) akan diset logic low dan kedua kontrol logic CE dan PD diset ke ISD kendali maka ISD akan mengeluarkan suara. Apabila tombol stop ditekan, Maka


(41)

39 kontrol logic CE pada ISD akan di set logic high dan ISD akan berhenti memutar suara (play).

2. Mode Record

Tombol ISD ditekan (on) akan di set ke mode Record. Apabila akan melakukan rekam suara, Tombol alamat Up/Dowm di setting dari alamat desimal 0 – 255 dan data alamat ini akan dikirim ke ISD port alamat. Kemudian tombol Play/Record ditekan terus selama panjang suara yang akan di rekam.

Untuk rangkaian pengalamatan suara pada ISD25120 dapat dilihat pada gambar 3.4.


(42)

40 Untuk flowchart dapat dilihat pada gambar 3.5

Gambar 3.5 Flowchart Pengalamatan Suara pada ISD25120

Mulai Inisialisasi Port Scanning Tombol Tombol Naik ditekan Tombol Turun ditekan Tombol Play/ Record ditekan Tombol Stop ditekan

Counter + 1

Tampilkan Alamat ke 7

Segment dan Port Alamat Counter = 255

Counter - 1

Tampilkan Alamat ke 7

Segment dan Port Alamat Counter = 0

Ambil Data dari Port Alamat

CE = 0 PD = 0

Kirim Data Alamat Ke Port Alamat ISD Set : ISD Mode

Play/Record

CE = 1 PD = 0

Counter=0 Counter=255 Yes No Yes No Yes Yes No No Yes No Yes No A B C D

E F

G

H

I

J K

L

M

N

O P

Q


(43)

41 Penjelasan flowchart pada gambar 3.5 sebagai berikut :

A. Proses program mulai.

B. Menginisialisasikan port mana saja yang dipakai.

C. Scanning pada semua tombol.

D. Apakah tombol naik ditekan : Jika ya, proses dilanjutkan

Jika tidak, scanning pada tombol lain. E. Counter di incrementkan sebanyak satu. F. Apakah counter sudah sampai dengan 255 :

Jika ya, counter di reset kembali ke 0. Jika tidak, proses di lanjutkan.

G. Counter direset kembali ke 0 dan kembali ke scanning tombol.

H. Menampilkan alamat suara pada seven segment dan pada port alamat dan kembali ke scanning tombol.

I. Apakah tombol turun ditekan : Jika ya, proses dilanjutkan

Jika tidak, scanning pada tombol lain. J. Counter dikurangi sebanyak satu. K. Apakah counter sudah sampai 0 : Jika ya, counter diisi dengan 255 Jika tidak, proses dilanjutkan.

L. Counter diisi dengan 255 dan kembali ke scanning tombol.

M. Menampilkan alamat suara pada seven segment dan pada port alamat dan kembali ke scanning tombol.

N. Apakah tombol play/record ditekan : Jika ya, proses dilanjutkan.

Jika tidak, scanning pada tombol lain.

O. Ambil data dari port alamat, pin CE diberi logika 0 dan pin PD diberi logika 0.

P. Kirim data alamat ke port alamat ISD dan setting ke mode play/record dan kembali ke scanning tombol.


(44)

42 Q. Apakah tombol stop ditekan :

Jika ya, proses dilanjutkan.

Jika tidak, kembali ke scanning tombol.

R. Pin CE diberi logika 1 dan pin PD diberi logika0 dan kembali ke scanning

tombol.

3.2.3. Multiplexer SN74150N

Pada rangkaian Multiplexer SN74150N ini input ABCD digunakan sebagai selektor yang dihubungkan ke P3.0, P3.1, P3.2 dan P3.3 pada mikrokontroler. Dengan selektor ini, jika input ABCD = 0000 maka E0 terpilih dan output W akan

berada dalam kondisi status active low. Dengan cara yang sama, apabila diberikan selektor input ABCD = 1000 maka input E1 terpilih dan output W akan berada

dalam kondisi status active low dan seterusnya. Untuk rangkaian multiplexer dapat dilihat pada gambar 3.6.


(45)

43 16 buah input tombol akan terhubung ke multiplexer IC SN74150N, ke 16 input ini akan diseleksi oleh multiplexer dan menghasilkan output data biner sebanyak 4 bit.

3.2.4. Demultiplexer 74HC154N

Pada rangkaian Demultiplexer 74HC154N ini input ABCD digunakan sebagai selektor yang dihubungkan ke ke P1.0, P1.1, P1.2 dan P1.3 pada mikrokontroler. Dengan selektor ini, jika input ABCD mendapat 0000 maka output O0 terpilih dan semua output lainnya akan berada dalam kondisi status

active high. Dengan cara yang sama, apabila diberikan selektor input ABCD =

1000 maka output O1akan terpilih dan seterusnya. Untuk rangkaian demultiplexer

dapat dilihat pada gambar 3.7.

Gambar 3.7. Rangkaian Demultiplexer 74HC154N

4 buah input mikrokontroler akan terhubung ke demultiplexer 74HC154N, ke 4 input ini akan diseleksi oleh demultiplexer dan menghasilkan 10 output untuk dikirimkan ke Photocoupler 2501.


(46)

44 3.2.5. Photocoupler 2501

Ditinjau dari kegunaan fisik photocoupler dapat berbentuk bermacam-macam. Bila hanya digunakan untuk mengisolasi level tegangan atau data pada sisi transmitter dan sisi receiver, maka photocoupler ini biasanya dibuat dalam bentuk solid (tidak ada ruang antara LED dan Photodiode). Sehingga sinyal listrik yang ada pada input dan output akan terisolasi. Dengan kata lain Photocoupler ini digunakan sebagai optosilator jenis IC.

Untuk pemakaian rangkaian photocoupler jenis IC ini disini difungsikan sebagai penyesuaian tegangan untuk mengkontrol Transistor tipe PNP (C9012) yang akan mengsupply tegangan 12 volt yang akan dibutuhkan oleh display seven segment. Untuk rangkaian photocoupler dapat dilihat pada gambar 3.8.

Gambar 3.8. Rangkaian Photocoupler 2501 Ket : 00 sampai 09 : dari Demultiplexer 74HC154N

TR0 samai TR9 : ke Transistor PNP C9012

3.3 Perangkat Lunak

Perancangan perangkat lunak dilakukan bersamaan dengan pembuatan bagian perangkat keras (hard ware), sehingga pada saat pembuatan listing program selesai dapat langsung dicoba pada perangkat keras (hard ware).

Untuk mempermudah pembuatan listing program, dibuatlah diagram alir


(47)

45 ditelusuri program satu persatu seandainya program tidak berjalan sesuai keinginan.

Diagram alir dari software sistem ini ditunjukan pada gambar 3.9. Star

Deklarasi variabel

Inisialisasi port & timer

Scanning tombol & display seven segment

Indexsw tombol ditekan 1 - 8

Indexsw ditekan 9 - 16

CountA + 1 increment

Display seven segment

Suara

CountA = 999

CounA = 0

CountB + 1 increment

Display seven segment

Suara

CountB = 999

CountB = 0 yes no yes no yes no yes no

Gambar 3.9. Flowchart Perangkat Lunak

Penjelasan flowchart pada gambar 3.9 sebagai berikut : A. Proses program mulai.

B. Mendeklarasikan variabel-variabel yang akan dipakai pada program. C. Port 3.0 – 3.3 digunakan sebagai input dari multiplexer.

A

B

C

D

E F

G H I J K L M N O P


(48)

46 Port 3.4 digunakan sebagai signal masukan ke Mikrokontroler untuk deteksi penekanan tomb

Inisialisasi timer menggunakan mode 1.

D. Pada saat alat mulai dinyalakan, display sevent segment semuanya menyala lalu mikrokontroler AT89S52 akan menunggu input tombol yang ditekan oleh user.

E. Apakah tombol 1 sampai dengan 8 ditekan. Jika ya, maka counter A.

Jika tidak, kembali penyeleksian tombol.

F. Incrementkan sebanyak satu dan hasilnya disimpan di variabel_num. G. Menyalakan display seven segment.

H. Menyalakan Suara.

I. Apakah countA sudah sampai nilai 999, Jika ya, maka proses di lanjutkan. Jika tidak, kembali scanning tombol.

J. Nilai countA direset kembali ke 0 dan kembali ke scanning tombol. K. Apakah tombol 9 sampai dengan 16 ditekan.

Jika ya, maka countB.

Jika tidak, kembali scanning tombol.

L. Increment sebanyak satu dan hasilnya disimpan di variabel_num. M. Menyalakan display seven segment.

N. Menyalakan Suara.

O. Apakah countB sudah sampai nilai 999. Jika ya, maka proses dilanjutkan. Jika tidak, kembali ke scanning tombol.


(49)

47 Inisialisasi port

& timer

Increment display + 1

Display 1

P2 (control seven segment) = Teller P1 (control digit display) = 0

Display 3

P2 (control seven segment) = Puluhan P1 (control digit display) = 2

Display 2

P2 (control seven segment) = Satuan P1 (control digit display) = 1

Display 5

P2 (control seven segment) = Counter P1 (control digit display) = 4

Display 4

P2 (control seven segment) = Ratusan P1 (control digit display) = 3

Display 7

P2 (control seven segment) = SatuanX P1 (control digit display) = 6

Display 6

P2 (control seven segment) = TellerX P1 (control digit display) = 5

Display 9

P2 (control seven segment) = RatusanX P1 (control digit display) = 8

Display 8

P2 (control seven segment) = PuluhanX P1 (control digit display) = 7

Display 10

P2 (control seven segment) = CounterX P1 (control digit display) = 9

Switch display = 10 Switch display = 0 Start

Gambar 3.10 Flowchart Pengaktif Display

Penjelasan flowchart pada gambar 3.10 sebagai berikut : A. Proses menyalakan display seven segment. B. Inisialisasi timer menggunakan mode 1.

A

B

C

D E

F G H I J K L M N O no yes


(50)

48 C. Display diincrementkan sebanyak 1.

D. Apakah display sudah sampai 10. Jika tidak, proses dilanjutkan. Jika ya, display direset menjadi 0.

E. Selector display direset menjadi 0 dan kembali keincrement display. F. Display 1 : jika P1 bernilai 0, maka P2 akan mengaktifkan display seven

segment Teller baris pertama.

G. Display 2 : jika P1 bernilai 1, maka P2 akan mengaktifkan display seven segment Satuan baris pertama.

H. Display 3 : jika P1 bernilai 2, maka P2 akan mengaktifkan display seven segment Puluhan baris pertama.

I. Display 4 : jika P1 bernilai 3, maka P2 akan mengaktifkan display seven segment Ratusan baris pertama.

J. Display 5 : jika P1 bernilai 4, maka P2 akan mengaktifkan display seven segment Counter baris pertama.

K. Display 6 : jika P1 bernilai 5, maka P2 akan mengaktifkan display seven segment Teller baris kedua.

L. Display 7 : jika P1 bernilai 6, maka P2 akan mengaktifkan display seven segment Satuan baris kedua.

M. Display 8 : jika P1 bernilai 7, maka P2 akan mengaktifkan display seven segment Puluhan baris kedua.

N. Display 9 : jika P1 bernilai 8, maka P2 akan mengaktifkan display seven segment Ratusan baris kedua.

O. Display 10 : jika P1 bernilai 9, maka P2 akan mengaktifkan display seven segment Counter baris kedua.


(51)

49 Display seven

segment

Cek tombol (indexsw) 1 - 8

no

Counter = A

Counterflag = 1

Teller = indexsw

Increment countA

countA → num

num % 10 → satuan

num % 10 → puluhan num / 10 → num

num % 10 → ratusan

countA = 999 no

countA = 0 yes Deklarasi variabel

Cek tombol (indexsw) 9 -16

yes

Counter = B

Counterflag = 2

Teller = indexsw

Increment countB

countB → num

num % 10 → satuan

num % 10 → puluhan num / 10 → num

num % 10 → ratusan countB = 999

countB = 0

no yes

num / 10 → num num / 10 → num

yes no Scanning Tombol

Gambar 3.11 Flowchart Counter A dan Counter B

Penjelasan flowchart pada gambar 3.11 sebagai berikut : 1. Display seven segment menyala.

2. Mendeklarasikan variabel-variabel yang akan dipakai pada program. 3. Scan pada tombol.

4. Apakah tombol 1 sampai 8 ditekan : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 17 15 16 18 19 20 21 22 23 24 25 26 27 28 29


(52)

50 Jika ya, maka counter menunjukkan counter A.

Jika tidak, penyeleksian tombol 9 sampai 16. 5. Counter menunjukkan counter A.

6. Karena yang terpilih tombol 1 sampai 8, maka counterflag bernilai 1.

7. Teller diisi dengan indexsw, indexsw didapat dari penekanan tombol.

8. CountA diincremenkan dengan 1. 9. Nilai countA disalin ke variabel_num.

10.Variabel_num di modulus 10, hasilnya disimpan di variabel_satuan. 11.Variabel_num di bagi 10, hasilnya disimpan kembali ke variabel_num. 12.Variabel_num di modulus 10, hasilnya disimpan di variabel_puluhan. 13.Variabel_num di bagi 10, hasilnya disimpan kembali ke variabel_num. 14.Variabel_num di modulus 10, hasilnya disimpan di variabel_ratusan. 15.Apakah nilai countA sudah mencapai 999 :

Jika ya, proses dilanjutkan.

Jika tidak, kembali ke scanning tombol.

16.CountA direset menjadi 0 dan kembali ke scanning tombol. 17.Apakah tombol 9 sampai 16 ditekan :

Jika ya, maka counter menunjukkan counter B. Jika tidak, kembali ke scanning tombol.

18.Counter menunjukkan counter B.

19.Karena yang terpilih tombol 9 sampai 16, maka counterflag bernilai 2.

20.Teller diisi dengan indexsw, indexsw didapat dari penekanan tombol.

21.CountB diincremenkan dengan 1. 22. Nilai countB disalin ke variabel_num.

23.Variabel_num di modulus 10, hasilnya disimpan di variabel_satuan. 24.Variabel_num di bagi 10, hasilnya disimpan kembali ke variabel_num. 25.Variabel_num di modulus 10, hasilnya disimpan di variabel_puluhan. 26.Variabel_num di bagi 10, hasilnya disimpan kembali ke variabel_num. 27.Variabel_num di modulus 10, hasilnya disimpan di variabel_ratusan. 28.Apakah nilai countB sudah mencapai 999 :

Jika ya, proses dilanjutkan.


(53)

51 29.countB direset menjadi 0 dan kembali ke scanning tombol.

Suara

Playon counter

Set alamat suara “counter” ke ISD_Dataport

A

Gambar 3.12 Flowchart Suara Counter

Penjelasan flowchart pada gambar 3.12 sebagai berikut : A. Menyalakan suara.

B. Putar suara counter dengan memanggil alamatnya pada ISD. C. Mengatur alamat suara “counter” ke alamat data ISD. D. Lanjutkan ke A.

A

Play suara : CE = 0

While (!EOM = 0)

Stop : PD = 0 CE = 1

no

yes

end

Gambar 3.13 Flowchart Playon

Penjelasan flowchart pada gambar 3.13 sebagai berikut : A. Lanjutan A.

B. Putar suara, CE diberi nilai 0 agar ISD menyala.

A B

C

D

A

B

C

D E


(54)

52 C. Apakah EOM bernilai 0.

Jika ya, proses dilanjutkan.

Jika tidak, kembali ke Play Suara..

D. Menghentikan suara, PD diberi nilai 0 dan CE diberikan nilai 1 agar proses pemutaran suara berhenti.

E. Proses berakhir.

Star

Counterflag = 1

Playon A

Set alamat suara “A”

ke ISD_Dataport

A

Playon B

Set alamat suara “B”

ke ISD_Dataport

A no

yes

Gambar 3.14 Flowchart Suara A dan B

Penjelasan flowchart pada gambar 3.14 sebagai berikut : A. Mulai proses pemutaran suara.

B. Apakah counterflag bernilai 1. Jika ya, counter A.

Jika tidak, counter B. C. Mainkan suara counter A.

D. Mengatur alamat suara “A” ke alamat data ISD. E. Lanjutkan ke A.

F. Mainkan suara counter B.

A

B

C

D

E

F

G


(55)

53 G. Mengatur alamat suara “B” ke alamat data ISD.

H. Lanjutkan ke A.

Star

Playon nomorantrian

Set alamat suara “nomorantrian” ke ISD_Dataport

A

Gambar 3.15 Flowchart Suara Nomor Antrian

Penjelasan flowchart pada gambar 3.15 sebagai berikut : A. Mulai proses pemutara suara.

B. Putar suara nomorantrian dengan memanggil alamatnya pada ISD. C. Mengatur alamat suara “nomorantrian” ke alamat data ISD.

D. Lanjutkan ke A.

Star

Counterflag = 1

Terbilang countA

D

Terbilang countB

D no

yes

Gambar 3.16 Flowchart Terbilang Nomor Antrian

Penjelasan flowchart pada gambar 3.16 sebagai berikut : A. Mulai proses pemutaran suara.

A B

C

D

A

B

C

D

E


(56)

54 B. Apakah counterflag bernilai 1.

Jika ya, counter A. Jika tidak, counter B.

C. Putar suara bilangan untuk Counter A. D. Lanjutkan ke D.

E. Putar suara bilangan untuk Counter B. F. Lanjutkan ke D.

D

Bil2 >= 1 Dan Bil2 <= 99

B

Bil2 >= 100 Dan Bil2 <= 199

Bil2 >= 200 Dan Bil2 <= 999

D

Set alamat suara “se” ke ISD_Dataport

A

Set alamat suara “ratus” ke ISD_Dataport

A

B

Bil2 / 100 → x

C

Set alamat suara “ratus” ke ISD_Dataport

A

B

Gambar 3.17 Flowchart Play Ratusan

Penjelasan flowchart pada gambar 3.17 sebagai berikut : A. Lanjutan D.

A B C D E F G H I J K L M N O P yes

yes yes

no


(57)

55 B. Apakah bil2 lebih besar sama dengan 1 dan bil2 lebih kecil sama dengan

99.

Jika ya, lanjutkan ke B. Jika tidak, proses dilanjutkan.

C. Apakah bil2 lebih besar sama dengan 100 dan bil2 lebih kecil sama dengan 199.

Jika ya, pemilihan akan dilakukan lagi dengan menyeleksi bil2. Jika tidak, proses dilanjutkan.

D. Mengatur alamat suara “se” ke alamat data ISD. E. Lanjutkan ke A.

F. Mengatur alamat suara “ratus” ke alamat data ISD. G. Lanjutkan ke A.

H. Lanjutkan ke B. I. Lanjutkan ke B.

J. Apakah bil2 lebih besar sama dengan 200 dan bil2 lebih kecil sama dengan 999.

Jika ya, lanjutkan ke D. Jika tidak, proses dilanjutkan. K. Lanjutkan ke D.

L. Bil2 dibagi 100, hasilnya disimpan pada variabel_x. M. Lanjutkan ke C.

N. Mengatur alamat suara “ratus” ke alamat data ISD. O. Lanjutkan ke A.


(58)

56

B

Play puluhan

Bil1 <= 9

C yes

Bil1 = 10 Bil1 = 11

Bil1 >= 12 Dan Bil1 <= 19

Bil1 >= 20 Dan Bil1 <= 99

Set alamat suara “se”

ke ISD_Dataport yes

D

A

Set alamat suara “puluh”

ke ISD_Dataport

A

Set alamat suara “se”

ke ISD_Dataport

A

Set alamat suara “belas”

ke ISD_Dataport

A yes

C

Set alamat suara “belas”

ke ISD_Dataport

A yes

C

Set alamat suara “puluh”

ke ISD_Dataport

A yes

no no no no no

Gambar 3.18 Flowchart Play Puluhan

Penjelasan flowchart pada gambar 3.18 sebagai berikut : A. Lanjutan B.

B. Putar suara puluhan dengan memanggil alamatnya pada ISD. C. Apakah bil1 lebih kecil sama dengan 9.

Jika ya, lanjutkan ke C.

Jika tidak, pemilihan akan dilakukan lagi dengan menyeleksi bil1. D. Lanjutkan ke C.

E. Apakah bil1 sama dengan 10. Jika ya, proses dilanjutkan.

Jika tidak, pemilihan akan dilakukan lagi dengan menyeleksi bil1. F. Mengatur alamat suara “se” ke alamat data ISD.

G. Lanjutkan ke A.

H. Mengatur alamat suara “puluh” ke alamat data ISD. A B C D E F G I H J K L M N O P Q R S T U V W


(59)

57 I. Lanjutkan ke A.

J. Apakah bil1 sama dengan 11. Jika ya, proses dilanjutkan.

Jika tidak, pemilihan akan dilakukan lagi dengan menyeleksi bil1. K. Mengatur alamat suara “se” ke alamat data ISD.

L. Lanjutkan ke A.

M. Mengatur alamat suara “belas” ke alamat data ISD. N. Lanjutkan ke A.

O. Apakah bil1 lebih besar sama dengan 12 dan lebih kecil sama dengan 19. Jika ya, lanjutkan ke C.

Jika tidak, pemilihan akan dilakukan lagi dengan menyeleksi bil1. P. Lanjutkan ke C.

Q. Mengatur alamat suara “belas” ke alamat data ISD. R. Lanjutkan ke A.

S. Apakah bil1 lebih besar sama dengan 20 dan lebih kecil sama dengan 99. Jika ya, lanjutkan ke C.

Jika tidak, lanjutkan ke D. T. Lanjutkan ke C.

U. Mengatur alamat suara “puluh” ke alamat data ISD. V. Lanjutkan ke A.


(1)

74 5.2 Saran

Hasil dari percobaan didapat kelemahan oleh karena itu agar penelitian menjadi sempurna, penulis menyarankan beberapa hal seperti berikut :

1. Untuk menghindari keluaran suara yang mempunyai delay waktu yang sangat lama antara suara pertama dan suara berikutnya, perlu memperkecil delay waktu pada program mikrokontroler.

2. Pengulangan nomor antrian yang sudah dipanggil.


(2)

PERANCANGAN DAN IMPLEMENTASI PEMANGGIL

NOMOR ANTRIAN BERBASIS MIKROKONTROLER

AT89S52 DAN ISD 25120

TUGAS AKHIR

Disusun untuk memenuhi syarat kelulusan pada

Program Studi Sistem Komputer Strata Satu di Jurusan Teknik Komputer

Oleh :

Taufik Oktoreza

10204003

Pembimbing : Hidayat, M.T

Selvia Lorena BR Ginting, M.T

JURUSAN TEKNIK KOMPUTER

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA

BANDUNG

2011


(3)

75 DAFTAR PUSTAKA

1. Eko, Agfianto Putra, Belajar MikrokontrolerAT89S51/52/55 (teori dan aplikasi), Yogyakarta : Gava Media, 2003.

2. Kusmara, Hendra, Termometer Badan dengan Output Suara Berbasis Mikrokonroler AT89S52, Skripsi Teknik Komputer, UNIKOM, Bandung, 2008.

3. Teori Mikrokontroler, (http://www.datasheet4u.com/html/A/T/8/ AT89S52_ATmelcorpora.pdf, diakses pada tanggal 20 Agustus 2010). 4. Rangkaian Optocoupler, (http://www.datasheet4u.com/html/O/P/B/

OPB703.QTOphoelectronics.pdf, diakses pada tanggal 20 Agustus 2010). 5. AT89S52, Atmel corporation, Orchard Parkway, 2003.

6. ISD25120, Voice Solution In SiliconTM, (http://www.datasheet4u.net/ datasheet/I/S/D/ISD2560/silikon.pdf. Diakses pada tanggal 20 Agustus 2010).

7. Multiplexer SN74150N, Texas Instruments Incorporrated, Texas, 1998. 8. Demultiplexer 74HC154N, Philips Semiconductors, Netherlands, 2004. 9. Photocoupler2501, NEC Corporation, Japan, 1998.


(4)

Taufik Oktoreza lahir di Sukabumi pada 22 Oktober 1985. Anak ke-3 dari 3 bersaudara memiliki tinggi badan 166 cm. Alamat sekarang Jl. Pelabuhan II No.167 RT. 02/RW. 04 Kab. Sukabumi Jawa Barat. Lulus SD Islam Al-Azhar 7 Sukabumi pada tahun 1998, SLTP Islam Al-Azhar 7 Sukabumi pada tahun 2001, SMU Negeri 3 Sukabumi Jurusan IPA pada tahun 2004, dan Gelar Sarjana Teknik Komputer diperoleh dari Program Studi Teknik Komputer Fakultas Teknik dan Ilmu Komputer UNIKOM tahun 2011. Pengalaman kerja praktek di PT.Bina Kayu Leastari Tasikmalaya bagian Jaringan pada Juli-Agustus 2008.


(5)

vi

KATA PENGANTAR

Bismillaahirrahmaanirrahiim.

Assalamu`alaikum Wr. Wb.

Puji Syukur penulis panjatkan ke adirat Allah SWT yang telah melimpahkan rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan skripsi ini. Segala berkah tercurah kepada Nabi dan Rasulullah Muhammad SAW yang telah menjadi teladan yang patut di contoh baik dalam capan, sikap dan perbuatan oleh seluruh umat manusia.

Skripsi ini disusun sebagai salah satu syarat untuk menyelesaikan pendidikan Strata satu pada program studi Sistem Komputer di Jurusan Teknik Komputer Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia. Pada tugas akhir ini Penulis mengambil judul “Perancangan dan implementasi pemanggil nomor antrian berbasis mikrokontroler AT89S52 dan ISD 25120”.

Penulis sangat menyadari keterbatasan yang dimiliki, karena terselesaikannya penyusunan tugas akhir ini tidak terlepas dari bantuan serta dukungan dari berbagai pihak kepada Penulis. Untuk itu, izinkanlah Penulis menyampaikan ucapan terima kasih yang sebesar-besarnya kepada :

1. Ibu Sri Nurhayati, M.T, selaku Ketua Jurusan Teknik Komputer.

2. Bapak Hidayat, M.T., selaku dosen pembimbing I yang telah meluangkan waktunya untuk memberikan bimbingan sehingga tugas akhir ini selesai. 3. Ibu Selvia Lorena Br. Ginting, M.T., selaku dosen pembimbing II yang telah

meluangkan waktunya untuk memberikan bimbingan sehingga tugas akhir ini selesai.

4. Bapak John Adler, M.Si., selaku Dosen Wali Kelas 04-TK1.

5. Seluruh Dosen Jurusan Teknik Komputer yang telah memberikan ilmu untuk penulis.

6. Staff Administrasi Jurusan Teknik Komputer yang telah mengurusi setiap administrasi penulis.

7. Ibu dan Bapak tercinta yang telah memberikan do`a yang tulus, motivasi, bimbingan serta dorongan moril dan materil yang tidak mungkin bisa dibalas sampai kapanpun.


(6)

vii

8. Kakakku tercinta Mia Ekawati dan Rizky Septiandi, serta keluarga besar yang berada di Cianjur dan Sukabumi yang selalu memberikan dukungan dan doa yang tulus di setiap waktu.

9. M.Fajar, Tony Hartono, Soni Rizki, Andri, Aji, Alam, Syaehu, Septian, Hafnie, Ihsan, Iqbal, Maski, Giri dan anak-anak 04 Tk-1 dan 04 Tk-2 yang telah memberikan dorongan secara moril dan materil kepada penulis.

10. Ade Srikusniyati, Galye Trivieka Rahardjo, Ayu Maharani dan Sella Irlanda yang pernah mengisi hari-hari dengan rasa sayang dan memberikan motivasi kepada penulis.

11. Angga Setia Nugraha, Ario Damar, Luki, Yuda, Restu Arum, Fitria Norma Yustitia, Annisa Dzawilfitri dan anak-anak Sukabumi yang tidak bisa disebutkan satu persatu yang telah memberikan semangat untuk mengerjakan tugas akhir ini.

12. A Nanang yang telah membantu dalam pembuatan Tugas Akhir.

13. Seluruh Bapak dan Ibu Guru yang telah memberikan ilmu kepada penulis semenjak sekolah dasar sampai sekolah menengah atas.

Penulis menyadari dengan sepenuhnya bahwa dengan keterbatasan ilmu dan kemampuan yang penulis miliki, penyusunan tugas akhir ini masih jauh dari kata sempurna, untuk itu dengan senang hati penulis menerima segala saran dan kritik yang sifatnya membangun demi lebih baiknya tugas akhir ini.

Akhirnya penulis berharap semoga laporan ini dapat bermanfaat bagi penulis khususnya bagi para pembaca pada umumnya.

Wassalamu`alaikum Wr. Wb.

Bandung, Agustus 2011