SISTEM ANTRIAN DENGAN MENGGUNAKAN PESAN SUARA BERBASIS PERSONAL KOMPUTER JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNOLOGI INDUSTRI INSTITUT TEKNOLOGI MEDAN ITM 2008 ABSTRAK Sistem mekanis yang bekerja secara otomatis dikendalikan dengan perangkat digital dewasa ini semakin berkembang seiring dengan kemajuan teknologi dalam berbagai bidang. Pengendalian system antrian ini memanfaatkan port pararel computer yang dihubungkan terhadap rangkaian Mikrokontroler AT89S51, sehingga dapat menampilkan nomor urut pelanggan dan suara pemanggilan nomor urut pelanggan. Dengan system ini dihasilkan sebuah perangkat yang dapat mengurani atau menimbulkan terjadinya suatu antrian yang panjang, yang dapat menimbulkan masalah bagi para pelanggan yang tidak ingin menunggu lama pemanggilan nomor urut dari pada pelanngan tersebut. Mikrokontroler AT89S51 digunakan sebagai pengendali penerima data dari computer dan mengirimkannya ke Display Seven Segmen, dimana data yang diterima oleh Mikrokontroler AT89S51 akan diubah menjadi suatu instruksi atau perintah, untuk menampilkan nomor urut pelanggan pada Diplay Seven Segmen dan mengeluarkan suara pemanggilan nomor urut pelanggan. DAFTAR ISI ABSTRAK …………………………………………………………………… KATA PENGANTAR ………………………………………………………. DAFTAR ISI ………………………………………………………………… DAFTAR TABEL …………………………………………………………... DAFTAR GAMBAR ……………………………………………………….. BAB I PENDAHULUAN ………………………………………………... I.1. Latar Belakang ……………………………………………….. I.2. Tujuan Penulisan …………………………………………….. I.3. Batasan Masalah ……………………………………………... I.4. Metode Peulisan ……………………………………………… I.5. Sistematika Penulisan ………………………………………… BAB II LANDASAN TEORI …………………………………… II.1. Sistem Komputer …………………………………………….. II.2 Central Prosesor Unit ( CPU ) ………………………………. II.2.1. ALU ( Aritmatich Logic Unit ) ………………………… II.2.2. Unit Kontrol …………………………………………… II.2.3. Register ………………………………………………… II.2.4. Sistem Bus ……………………………………………. II.3 Input / Output Unit ……………………………………………. II.3.1. Port I/O ……………………………………………….. II.3.1.1. Port pararel PC ……………………………… II.4 Arsitektur Mikrokontroler AT 89S51 …………………………. II.4.1. Mikrokontroler AT89S51 ………………………. II.5. Bahasa Pemograman Visual basic …………………………… II.6. Komponen Elektronika ………………………………………….. II.6.1. Resistor …………………………………………………. II.6.2. Transsistor ……………………………………………….. II.6.3. Kapasitor ………………………………………………. BAB III PERANCANGAN ALAT ………………………………… III.1. Blok Diagram Sistem ……………………………………… III.2. Perancangan Rangkaian Power Supplay ( PSA ) …………. III.3. Rangkaian MikrokontrolerAT89551 ……………………… III.4. Rangkaian Display ( Seven Segmen ) …………………….. III.5. Rangkaian Tombol ………………………………………… BAB IV PENGUJIAN DAN ANALISA SOFWARE IV.1. Pengujian Sofware …………………………………………. IV.2. Pegujian Pararel Port ……………………………………… IV.3. Pengujian Rangkaian Power Supplay ( PSA ) …………… IV.4. Pengujian Rangkaian Mikrokontroler AT89S51 ………… IV.5. Pengujian Rangkaian Display Seven Segmen …………….. IV.6 Pengujian Rangkaian Tombol …………………………… BAB V KESIMPLAN DAN SARAN V.1 Kesimpulan V.2. Saran – Saran DAFTAR TABEL Tabel 2.1. Fungsi – fungsi PIN Port Pararel ………………………………. Tabel 2.2. Alamat Pada Port – Port Pararel ……………………………….. Tabel 2.3. Register Pada Port Pararel ……………………………………… Tabel 2.3.a. Port Data ( Alamat 0x378 ) …………………………….. Tabel 2.3.b. Port status( Alamat 0x379) ……………………………... Tabel 2.3.c. Port Kontrol (Alamat 0x37A ) …………………………. Tabel 2.4. Bit Status ………………………………………………………… Tabel 2.5. . Keterangan Tabulasi ……………………………………………. Tabel 2.6. Fungsi – fungsi Tombol pada Toolbar standard ………………. Tabel 2.7. Fungsi Kontrol …………………………………………………. Tabel 2.8. Fungsi Tombol Pada Project Explorer ……………………….… Tabel 4.1. Pengujian Pararel Port Out dan H378, dan H1 …………………. Tabel 4.2. Hasil Pararel Port Out dan H378,dan H1 ……………………….. Tabel 4.3. Pengujian Pararel Port Out dan H378, dan H2 ………………….. Tabel 4.4. Hasil Pararel Port Out dan H378,dan H2 ……………………….. Tabel 4.5. Pengujian Pararel Port Out dan H378, dan H4 ………………….. Tabel 4.6. Hasil Pararel Port Out dan H378,dan H4 ……………………….. Tabel 4.7. Pengujian Pararel Port Out dan H378, dan H8 ………………….. Tabel 4.8. Hasil Pararel Port Out dan H378,dan H8 ……………………….. DAFTAR GAMBAR Gambar 2.1. Blok Diagram Operasi CPU …………………………………… Gambar 2.2. Port Pararel DB 25 …………………………………………….. Gambar 2.3. Port Pararel Centronix …………………………………………. Gambar 2.4. Tampilan awal Visual Basic …………………………………… Gambar 2.5. Tampilan Dasar MS – Visual Basic …………………………… Gambar 2.6. Tool Box ……………………………………………………….. Gambar 2.7. Properties Form ………………………………………………… Gambar 2.8. Form Layout …………………………………………………… Gambar 2.9. Code Windows ………………………………………………… Gambar 2.10. Jendela Project ………………………………………………… Gambar 3.1. Blok Diagram ………………………………………………….. Gambar 3.2. Rangkaian Power Supplay ( PSA ) …………………………….. Gambar 3.3. Rangkaian mikrokontroer AT89S51 ……………………………. Gambar 3.4. Rangkaian Display seven segmen ……………………………….. Gambar 3.5. Rangkaian Tombol ……………………………………………… Gambar 3.6. Rangkaian antar Muka Pararel Port ……………………………… Gambar 4.1. Rangkaian Pengujian Pararel Port Out dan H378, dan H1 ………. Gambar 4.2. Rangkaian Pengujian Pararel Port Out dan H378, dan H2 ………. Gambar 4.3. Rangkaian Pengujian Pararel Port Out dan H378, dan H4 ………. Gambar 4.4. Rangkaian Pengujian Pararel Port Out dan H378, dan H8 ………. BAB I PENDAHULUAN I.1. Latar Belakang Masalah Dalam kurun waktu singkat perkembangan teknologidinegara maju terus melaju dan berkembang sangat pesat.Bank dan perusahaan – perusahaan yang bergerak di bidang pelayanan terhadap masyarakat merupakan tempat yang sering didatangi oleh konsumen. Ketika konsumen yang datang jumlahnya tidak banyak, maka tidak menjadi masalah. Namun ketika konsumen yang datang jumlahnya lebih dari biasanya atau jumlahnya cukup banyak, maka hal ini akan menimbulkan masalah. Masalah yang terjadi adalah konsumen harus antri dalam menunggu gilirannya. Hal ini tentunya tidak diinginkan oleh konsumen dan akan menimbulkan rasa ketidaknyamanan bagi konsumen. Harus antri dalam kondisi berdiri dan berbaris tidaklah diinginkan oleh semua orang. Apalagi jika berdiri dalam waktu yang cukup lama, tentunya tidak ada orang yang menginginkannya. Masalah di atas dapat diatasi dengan membuat system antrian dengan menggunakan nomor antrian. Sehingga dengan demikian konnsumen tidak perlu berdiri mengantri, konsumen cukup duduk dan menunggu panggilan. System ini cukup membantu, namun akan sangat merepotkan jika proses pemanggilan harus dilakukan oleh orang tertentu. Untuk mengatasinya, tugas tersebut dapat digantikan dengan computer, sehingga semua proses pemanggilan dilakukan oleh computer. Hal ini sangat efektip bagi konsumen dan bagi pengguna system tersebut. I.2. Rumusan Masalah Berdasarkan uraian di atas, penulis tertarik untuk mengangkatnya menjadi sebuah skripsi dengan judul “Sistem antrian dengan menggunakan voice dengan menggunakan bahasa pemrograman visual basic”. Sistem yang akan disimulasi akan sesuai dengan penjelasan pada latar belakang, yaitu computer akan memanggil konsumen sesuai dengan nomor urut antrian. Sehingga dengan demikian konsumen tidak perlu berdiri dalam antrian tetapi cukup duduk saja sambil menunggu panggilan yang dilakukan oleh computer. I.3 Tujuan Penulisan Tujuan dilakukan Tugas Akhir ini adalah sebagai berikut: 1. Unutk mencegah terjadinya antrian yang panjang sehngga mempermudah konsumen melakukan transasksi. 2. Memanfaatkan komputer untuk mensimulasi suatu system yang dapat digunakan untuk kepentingan umum. 3. Membuat suatu system antrian yang diharapkan dapat mempermudah konsumen dan pengguna system antrian tersebut. I.4 Batasan Masalah Mengacu pada hal diatas, penulis mesimulasikan system antrian dengan menggunakan voice dengan menggunakan bahasa pemrograman visual basic dengan batasan sebagai berikut : 1. Pada simulasi ini bahasa pemrograman yang digunakan adalah visual basicv 6.0, sehingga dalam pembahasan penulis hanya membahas bahasa pemrograman visual basic 6.0.. 2. Pada simulasi ini penulis hanya menggunakan 4 loket sebagai simulasi, sehingga pembahasan hanya mencakup 4 loket tersebut. I.5 Sistematika Penulisan Untuk mempermudah pembahasan dan pemahaman maka penulis membuat sistematika pembahasan bagaimana sebenarnya prinsip system simulas antrian dengan menggunakan voice dengan menggunakan bahasa pemrograman visual basic, maka penulis menulis laporan ini sebagai berikut: BAB I. PENDAHULUAN Dalam bab ini berisikan mengenai latar belakang, rumusan masalah, tujuan penulisan, batasan masalah, serta sistematika penulisan. BAB II. LANDASAN TEORI Landasan teori, dalam bab ini dijelaskan tentang teori pendukung yang digunakan untuk pembahasan seperti teori mengenai pemrograman visual basic dan tentang komponen komponen yang digunakan seperti resitor, transistor dan komponen pendukung lainnya. BAB III. METODOLOGI PENELITIAN Pada bagian ini akan dibahas mengenai yaitu: bahan – bahan, alat, diagram blok dari rangkaian, skematik dari masing-masing rangkaian.Pemakaian program dan diangram alir program. BAB IV. ANALISA RANGKAIAN DAN SISTEM KERJA ALAT Pada bab ini akan dibahas hasil analisa dari rangkaian dan sistem kerja alat, dan juga pemrograman. BAB V. KESIMPULAN DAN SARAN Bab ini merupakan penutup yang meliputi tentang kesimpulan dari pembahasan yang dilakukan dari tugas akhir ini serta saran apakah rangkaian ini dapat dibuat lebih efisien dan dikembangkan perakitannya pada suatu metode lain yang mempunyai sistem kerja yang sama. BAB II DASAR TEORI 2.1 Sistem komputer Komputer merupkan alat atau mesin penghitung elektronik yang cepat menerima input digital, memprosesnya berdasarkan daftar instruksi internal yang tersimpan dan menghasilkan nilai perhitungan dalam informasi output. Daftar instruksi dinamakan program program komputer dan penyimpanan internal dinamakan memori komputer. Dalam bentuk yang paling sederhana komputer terdiri dari 5 bagian fungsional yang independent, yaitu : input, memori, aritmatik dan logika, output dan kontrol unit. Unit input menerima informasi yang dikodekan dari operator manusia, peralatan elektromagnetik seperti keyboard ke display atau dari komputer yang lain dengan menggunakan line komunikasi digital. Informasi yang diterima disimpan dalam memori untuk selanjutnya dipakai sebagai referensi atau digunakan segera oleh rangkaian aritmatika dan logika untuk menjalankan operasi yang diinginkan .Langkah - langkah untuk memproses suatu informsi tergantung program yang tersimpan di dalam memori. Dan pada akhirnya hasil dari proses akan dikirim keluar melalui output unit. Seluruh dari rangkaian pekerjaan ini dikontrol oleh kontrol unit. Struktur Central Prossesing Unit (CPU) computer ditunjukkan oleh gambar 2.1. Gambar 2.1. Blok Diagram Operasi CPU 2.1.1 Central Processing Unit Dalam bentuk sederhana, komputer hanya memiliki sebuah unit pengerjaan intruksi program. Unit ini melakukan komunikasi dan mengontrol operasi dari subsystem yang lain didalam komputer. Karena mempunyai peranan central maka unit ini diketahui dengan Central Prosesing Unit (CPU). Jika dilihat dari fungsinya maka fungsi dari unit aritmatik dan logika, dan kontrol unit tercakup dalam CPU. Jadi tugas utama CPU adalah mengambil dan melakukan eksekusi program. CPU terdiri dari tiga komponen, yaitu: ALU (Arithmathic Logic Unit), CU (Control Unit), dan register. ALU (Arithmatic Logic Unit) Sebagaian operasi komputer dilakukan dalam unit aritmatik dan logika (ALU) dari processor. Pertimbangan tipe contoh sebagai berikut; Andaikata dua angka yang berlokasi di main memori ditambahkan. Data tersebut dibawah ke unit aritmatik dan logika dimana proses penambahan dilaksanakan. Nilai penjumlahan bisa langsung disimpan dalam memori atau ditahan untuk proses selanjutnya didalam procesor. Untuk oprasi aritmatik dan logika yang lain seperti perkalian, pembagian atau membanding angka, dimulai membawa operand yang diperlukan ke ALU, dimana proses penting dilakukan. Tidak semua operan yang digunakan dalam proses perhitungan terletak dimemori utama. Prosessor umumnya terdiri dari beberapa elemen penyimpan kecepatan tinggi yang disebut register, yang bisa digunakan sebagai penyimpan sementara untuk operand yang sering digunakan. Masing – masing register mampu menyimpan satu word data. 2.1.2Unit Kontrol Unit memori, unit aritmatika dan logika, unit input, dan out put menyimpan dan memproses informasi dan membentuk operasi output. Operasi masing - masing dari unit ini harus dikordinasikan satu dengan yang lainya. Dan ini merupakan tugas unit kontrol. Unit kontrol secara efektif menjadi pusat syaraf yang mengirim sinyal ke kontrol unit - unit yang lain dan merasakan keadaan logikanya. Transfer I/O terdiri atas operasi input dan output, yang dikontrol instruksi software yang menyatakan peralatan yang tercakup dan informasi yang ditranfer. Timing sinyal yang memerintahkan transfer dihasilkan oleh rangkaian kontrol. Timing sinyal adalah sinyal yang menentukan kapan suatu aksi terjadi. Transfer data antara processor dengan memori juga dikontrol oleh unit kontrol melalui timing sinyal. 2.1.3.Register Dalam CPU terdapat sekumpulan register yang berfungsi sebagai memori yang sangat cepat dan kecil kapasitasnya. Register-register berfuingsi membantu pelaksanaan oprasi yang dilakukan CPU. 2.1.4 Sistem Bus Sampai saat ini sudah jelas bahwa mikroprosesor melakukan banyak sekali pemindahan data ke dan dari CPU. Metode standard untuk pemindahan data adalah menggunakan struktur bus. Bus adalah susunan beberapa konduktor yang berfungsi untuk mengirim data, alamat, kontrol, kendali, dan informasi yang lain dalam oprasinya untuk melakukan/mengontrol sistem yang ada diluar CPU mengetahui tiga bus utama yang akan terhubung dengan memori dan I/O. Addres Bus Suatu bus/saluran dimana CPU mngirim alamat dari suatu lokasi yang akan diakses oleh CPU. Adress Bus selalu dipergunakan oleh CPU untuk memilih salah satu dari peralatan I/O untuk dibaca atau ditulis. Data Bus Suatu bus/saluran dimana CPU mengrim data atau menerima data. Sehingga data bus merupakan saluran yang bersifat dua arah (bi-directional) bus. Proses mengirim atau membaca yang berarti mengirim atau menerima data sangat tergantung kepada kontrol CPU. Control Bus Suatu bus/saluran yang digunakan oleh CPU untuk mengirim sinyal kontrol, yang berupa perintah - perintah kepada peralatan yang ada sesuai dengan data yang ada pada bus dan dialamatkan pada suatu peralatan yang sesuai dengan nilai dari address bus. Pada dasarnya apa yang dilakukan oleh komputer / mikroprosessor adalah sebagai berikut : 1. Ambil instruksi dari memori 2. Jalankan instruksi 3. kembali ke langkah 1 Biasanya kita menyebut kesatuan antara aritmatika dan logika, serta kontrol unit dalam satu kesatuan dengan sebutan CPU (Central Processing unit) atau sederhananya adalah processor. Dengan adanya I/O memungkinkan CPU menerima data dari luar atau mengirim data keluar. CPU berfungsi mengatur dan mengkoordinasi seluruh kegiatan mikro komputer. CPU akan menjemput instruksi dari memori dan menterjemahkan kode biner menjadi aksi yang bersesuaian. Memori Memori digunakan untuk menyimpan kode biner dari instruksi yang akan dijalankan oleh CPU,juga digunakan untuk menyimpan data. Memori ini dapat berupa RAM yang hanya dapat menyimpan program atau data secara tetap. Memori utama biasanya volatile yaitu dapat mempertahankan data dan program yang disimpan begitu catu daya dihentikan. Komputer saat ini mengikuti konsep program tersimpan (store program concept) Von Neuman, yaitu program (kumpulan instruksi) disimpan disuatu tempat (memori) dimana kemudian instruksi – instruksi yang disimpan itu dieksekusi. Dengan konsep program tersimpan ini maka sasaran yang dicapai komputer sesuai atau bergantung program yang disimpan untuk dieksekusi. Aplikasi komputer dapat disesuaikan hanya dengan menggantikan program yang disimpan didalamnya. Sistem menjadi dapat bertujuan umum (general purpose), dimana fungsinya mengikuti program yang disimpankan untuk dieksekusi. 2.1.3 Input / Output Unit Input / output unit merupakan bagian dari komputer untuk menerima data maupun mengeluarkan / menampilkan data setelah diproses oleh prosessor. Port I/O adlah port atau gerbang atau tempat dipasangnya konektor dari peralatan I/O. Dimana setiap port I/O dibawah kontrol dari prosesor. 2.1.4 Port Paralel PC Port pararel digunakan pada aplikasi antarmuka, port ini memperoleh masukan hingga 8 bit dan keluaran hingga 12 bit pada saat bersamaan dengan hanya membutuhkan rangkaian eksternal sederhana untuk melakukan intruksi tertentu. Port ini terdiri dari 4 jalur control, 5 jalur status dan 8 jalur data. Hampir semua port pararel yang diimplementasikan mampu memberikan arus sekitar 12mA. Terjadinya transisi dari logika 1 ke 0 pada ACK akan membangkitkan interupsi perangkat keras port pararel IRQ 7. Pada jalur busy ( dan yang sejenis dengan tanda negasi ), jika sinyal logika 1 diterapkan pada pin ini dan kemudian register status dibaca, maka akan terbaca (pada bit 7) sebagai 0 bukan 1. Komputer XT/AT buatan IBM atau yang kompetibel pada umumnya menggunakan dua jenis port untuk komunikasi antara komputer dengan dunia luar, port tersebut adalah port parallel dan port serial. Di katakan port parallel karena data yang dikirim tau diterima pada port tersebut dengan sisem parallel (serentak), sedangkan port serial data yang dikirim maupun yang diterima dengan sistem serial (bergantian). Kedua sistem tersebut memiliki kekurangan dn kelebihan masing – masing, pada port parallel data yang ditransmisikan memiliki kecepatan yang tinggi, namun dibutuhkan satu kabel per bitnya, sehingga transmisi data menjadi mahal. Sedangkan sistem serial data di transmisikan secara bergantian, sehingga lebih lambat dri sistem parallel. Namun biaya menjadi lebih murah karena hanya membutuhkan satu kabel untuk trasnmisi datanya. Berikut adalah gambar 2.2 konektor port parallel DB-25 yang banyak digunakan pada IBM PC XT/AT atau kompatibelnya : Gambar 2.2 Port Paralel DB 25 Pada komputer tertentu kadangkala port paralelnya berupa connector centronix, namun fungsinya tetap sama hanya berbeda bentuk. Port Paralel centronic ditunjukkan pada gambar 2.3. Gambar 2.3.Port Parlel Centronix Dibawah ini adalah table 2.1 tentang konfigurasi pin dan nama sinyal konektornya parallel standart DB-25 serta fungsi – fungsi dari ke dua puluh lima pin tersebut : Tabel 2.1 Fungsi - Fungsi PIN Port Paralel Pin No Nama Sinyal Sifat Register 1 Strobe Out Control Inverted 2 Data 0 In/Out Data Ya 3 Data 1 In/Out Data 4 Data 2 In/Out Data 5 Data 3 In/Out Data 6 Data 4 In/Out Data 7 Data 5 In/Out Data 8 Data 6 In/Out Data 9 Data 7 In/Out Data 10 Acknowledge In Status 11 Busy In Status 12 Peper Out In Status 13 Select Out Status 14 Auto Line Feed Out Control 15 Error In Status 16 Initialize Out Control 17 Select In Out Control 18-25 Ground Gnd Ya Ya Ya Untuk dapat menggunakan port parallel, kita harus mengetahui alamatnya. Base Address LPT1 (local Printer terminal 1) biasanya adalah 888 desimal (378h) (888 desimal atau 378 heksadesimal adalah alamat port parallel pada computer) dan LPT2 biasanya 632 desimal (278h). Alamat tersebut adalah alamat yang umumnya digunakan, tergantung dari jenis komputer. Tepatnya kita bisa melihat pada peta memori tempat menyimpan alamat tersebut, yaitu memori 000.0408h untuk base address LPT1 dan memori 0000.040h untuk base address LPT2. Setelah kita mengetahui alamat port parallel, maka kita dapat menentukan alamat Data Port (CP), dan Status Port (SP). Alamat DP adalah base address dari port parallel tersebut, alamat SP adalah base address +1, dan alamat CP adalah base address +2. Base Address +1 adalah alamat untuk status port dan Base Address +2 adalah alamat untuk control port. Tabel 2.2 berikut adalah tabel alamat masing – masing port yang umumnya digunakan yaitu : Tabel 2.2. Alamat Pada Port-Port Paralel Alamat 3BC – 3BFH Keterangan Digunakan untuk port pararel yang terpadu dengan kartu video, tidak mendukung alamat – alamat ECP 378 – 37FH Biasanya digunakan untuk LPT 1 278 – 27FH Biasanya digunakan untuk LPT 2 1.5.1.1 Register Port Pararel Terdapat tiga jenis register pada port pararel yang umum digunakan, yaitu: 1. Register Data Port Pararel 2. Register Port Status 3. Register Port Kontrol Ketiga jenis port register memiliki alamat yang berbeda yang digunakan untuk mengeluarkan data pada jalur data port pararel ( Pin 2 s/d Pin 9 ). Register ini normalnya sebagai port baca tulis, untuk membaca dari port ini maka yang terbaca adalah byte terakhir yang dikirim. Register Port status berasal dari lima masukan port pararel (Pin 10,11,12,13 dan 15). Sebuah register status IRQ dan dua bit tercabang. Perlu diingat bahwa bit 7 (busy) sebagai masukan aktif rendah. Jika bit 7 terbaca sebagai logika 0 artinya pada pin tersebut terpasang tegangan 5 V. Juga pada bit 2 IRQ, jika bit ini terbaca 1 artinya interupsi ( selah ) tidak muncul. Register Port kontrol sebagai register tulis saja. Saat sebuah pencetak disambungkan pada port pararel, maka ia membutuhkan 4 kontrol yaitu strobe, auto linefeed, Initialize, dan select printer, yang semua sifatnya Inverted kecuali Initialize. Ketika port pada port pararel, yaitu port data, port status, dan port kontrol, memiliki register prangkat lunak dan masing masing berukuran 8 bit. Susunan bit-bit pada register port pararel untuk masing masing port dapat dilihat pada tabel2.3. Semua keluaran pada register port data berlogika sebenarnya yaitu , menuliskan logika 1 ke salah satu bit pada data port menyebabkan logika 1 pada bit yang bersangkutan. Namun demikian, keluaran - keluaran/SELECT_IN, /AUTO FEED, dan /STROBE pada Control Port berlogika inversi (kebalikan). Artinya, penulisan logika 1 ke salah satu bit pada Control Port menyebabkan logika 0 pada bit yang bersangkutan. Untuk bit bit yang menggunakan logika inversi, hal ini harus diperhatikan agar tidak mengacaukan maksudnya. Untuk itu, bit yang akan dikirimkan tersebut dapat dibalik dengan cara menggunakan fungsi EX-OR (Exclusive OR) sebelum oprasi penulisan. Sebagai contoh, jika diinginkan mengeluarkan 1000 pada nibble rendah dan tidak melakukan inversi, hardwere akan membalik bit 3, membiarkan bit 2 apa adanya, dan membalik bit 1 dan 0. Hasil yang muncul pada keluaran adalah 0011 yang jauh dari yang diharapkan. Dengan menggunakan fungsi EX-OR, 1000 sebenarnya dikirimkan ke port sebagai 0011. Hadware kemudian membalik bit 3,1 dan 0 dan keluaranya adalah 1000 sesuai dengan yang diharapkan. Pada port printer terdapat lima bit status (BSY, /ACK, PE (paper empty), SELECT, /ERROR). Sebagai catatan, maksud pemberian nama sinyal ini adalah sesuai dengan namanya logika tinggi pada SELECT menunjukan bahwa printer dalam keadaan online. Logika tinggi pada BSY atau PE menunjukan ke PC bahwa printer dalam keadaan sibuk (busy) atau kehabisan kertas. Logika rendah pada /ACK menunjukan printer menerima suatu data. Logika rendah pada/ERROR menunjukan printer dalam kondisi error. Semua masukan ini dijemput dengan cara membaca 5-bit tertinggi dan Status Port. Namun demikian, perancang asli rangkaian antar muka printer membalik sinyal BSY secara hardware. Artinya, jika logika 0 ada pada masukan BSY, bit sebenarnya harus dibaca sebagai logika 1. Tabel bit status ditunjukkan pada table 2.4 Sebagai kesimpulan, pada port printer terdapat minimal 12 keluaran; 8 pada port dan 4 pada nibble rendah Control Port. Ada 5 masukan pada 5 bit tertinggi Status Port. Tiga bit keluaran pada control Port dan satu bit masukan pada Status Port dibalik secara hardware, tetapi hal ini dapat ditangani dengan menggunakan fungsi EX-OR untuk memiliki bit - bit yang dipilih. 2.3 Bahasa Pemograman Visual Basic. Visual Basic merupakan bahasa pemograman yang cukup populer dan mudah untuk dipelajari. Visual Basic juga menyediakan fasilitas yang memungkinkan pemakai menyusun sebuah program dengan memasang objek-objek grafis dalam sebuah grafis dalam sebuah form. Visual Basic berawal dari bahasa pemograman BASIC (Beginners All Purpose Symbolic Instruction Code). Karena bahasa basic mudah dipelajari dan populer maka hampir setiap programmer menguasai bahasa ini. 2.3.1 Memulai Visual Basic Pada bagian ini akan dijelaskan bagaimana cara menjalankan Visual Basic pada system operasi windows. Cara pertama yang dapat dilakukan untuk memulai Microsoft Visual Basic adalah: • Klik tombol start pada Taskbar, kemudian pilih program dari tampilan menu utama. • 2.3.2 Dari tampilan menu yang ada, pilih Visual Basic. Tampilan Awal Visual Basic Secara otomatis, pada saat pertama kali menjalankan Visual Basic,akan tampil kotak dialog New Project seperti yang terlihat pada ilustrasi gambar 2.6. Gambar 2.6. Tampilan awal Visual Basic Pada kotak dialog tersebut terdapat tiga pilihan tabulasi yang ditunjukkan pada gambar 2.7. Tabel 2.7. Keterangan Tabulasi Tabulasi Keterangan New Pilihan ini digunakan untuk membuat project baru dengan berbagai macam pilihan Existing Pilihan ini digunakan untuk membuka project yang pernah dibuat sebelumnya dengan menetukan folder sekaligus nama file. Recent Pilihan ini digunakan untuk membuka project yang telah dibuat dan terakhir kali dibuka. Tampilan dasar MS-Visual Basic ditunjukkan pada gambar 2.7 sebagai berikut Gambar 2.7.Tampilan dasar MS-Visual Basic 2.3.3 Komponen Visual Basic. 1. Title Bar Title bar merupakan batang judul dari program Visual Basic yang terletak pada bagian paling atas dari jendela program yang berfungsi untuk menampilkan judul atau nama jendela.Selain itu title bar juga berfungsi : • Memindahkan posisi jendela dengan menggunakan proses drag and drop pada posisi title bar tersebut. • Mengatur ukuran jendela dari ukuran maximize keukuran restore ataupun sebaliknya dengan melakukan klik ganda pada posisi titel bar tersebut. 2. Menu Bar Menu bar merupakan batang menu yang terletak dibawah titel bar yang berfungsi untuk menampilkan pilihan menu atau perintah dan untuk mengoperasikan program Visual Basic.Saat pertama kali program Visual Basic terbuka,anda dapat melihat tiga belas menu utama, yaitu : File, Edit, View, Project, Format, Debug, Run, Query, Diagram, Tools, AddIns, Windows dan Help. Menu bar memiliki sederatan pilihan menu yang masing-masing mempunyai arti dan fungsi berbeda. Tampilan pilihan menu dalam Visual Basic memiliki beberapa variasi yang masingmasing mempunyai pengertian yang berbeda. 3.Tool Bar Toolbar batang yang berisi kumpulan tombol yang terletak di bagian bawah menu bar yang dapat digunakan untuk menjalankan suatu perintah.Pada kondisi default program Visual Basic hanya menampilkan toolbar standard. Berikut merupakan table 2.8 fungsi - fungsi tombol pada toolbar standard. Tabel 2.8.Fungsi-Fungsi Tombol pada Toolbar Standard Tombol Nama Fungsi Add Project Menambah project baru,dengan pilihan: Add form • Standard EXE • ActiveX EXE • activeX DLL • activeX Control Menambah item,dengan pilihan : • Form • MDI Form • Module • Class Module • User Control • Property Page • User Document • Add File Menu Editor Menampilkan kotak dialog menu editor. Open Project Membuka project yang sudah pernah dibuat sebelumnya. Save Project group Menyimpan project. Cut Memotong kontrol yang ada di jendela form atau teks yang ada dijendela kode. Copy Menempelkan kontrol atau teks yang sudah dipotong dengan perintah cut atau disalin dengan perintah copy. Find Mencari teks pada kode. Undo Membatalkan suatu perintah yang dijalankan sebelumnya. Redo Mengulangi suatu perintah yang pernah dibatalkan. Start Menjalankan program Break Menghentikan program yang sedang dijalankan untuk sementara. End Menghentikan program yang sedang dijalankan. Project Explorer Menampilkan jendela project explorer. Properties windows Menampilkan jendela properties. 3. Form layout window Menampilkan jendela form layout Object browser Menampilkan jendela object browser. Toolbox Menampilkan jendela toolbox. Tool Box Toolbox merupakan kotak perangkatyang berisi kumpulan tombol atau kontrol untuk mengatur desain dari aplikasi yang dibuat.Pada kondisi default,toolbox menampilkan tabulasigeneral dengan 21 tombol kontrol yang dapat ditampilkan dengan menggunakan prosedur : • Klik tombol toolbox dibagian toolbar standard • Pilih perintah view-toolbox Tabel tool box ditunjukkan pada gambar 2.8 Gambar 2.8. Tool Box Untuk penjelasan tentang fungsi masing – masing kontrol,berikut adalah tabel 2.9 fungsi dari masing-masing kontrol. Tabel 2.9.Fungsi Kontrol Kontrol Nama Fungsi Pointer Memilih,mengatur ukuran dan memindah posisi kontrol yang terpasang pada bagian form. Picturebox Menampilkan file gambar. Label Menambahkan label atau teks tambahan. Textbox Menambahkan kotak text. Command Button Manambahkan kontrol kotak perintah Listbox Menambahkan kontrol daftar pilihan. Timer Menambahkan kontrol sebagai kontrol pencacah waktu. Line Menambahkan kontrol gambar garis lurus Image Menambahkan file gambar dengan pilihan properti yang lebih sedikit dibandingkan kontrol Picturebox. OLE Menambahkan kontrol yang berhubungan dengan proses relasi antara program aplikasi. 5. Properties Windows Properties windows merupakan sebuah jendala yang digunakan untuk menampung nama properti dari kontrol terpilih.Pengaturan properti dari kontrol terpilih.Pengaturan properti pada program Visual Basic merupakan hal yang sangat penting untuk membedakan objek yang satu dengan yang lainnya. Pada jendela properti ditampilkan jenis dan nama objek yang dipilih urut berdasarkan abjad pada tab alphabetic atau berdasarkan kategori pada tab categorized. Untuk menampilkan jendela properties dapat menggunakan prosedur sebagai berikut : o Klik tombol properties window pada toolbar standard. o Pilih perintah view-properties window o Shortcut key F4 Bentuk properties form ditunjukkan pada gambar 2.9. Gambar 2.9.Properties form. 6. Form Window Form window merupakan jendela desain dari sebuah program aplikasi. Dari form window dapat mendesain sebuah program aplikasi dengan menempatkan control - kontrol yang ada di bagian toolbox pada area form. Pada jendela form juga terdapat beberapa elemen yang dapat digunakan untuk mengatur tampilan.Untuk lebih jelas perhatikan gambar 2.10. Gambar 2.10.form Layout 7. Code Window Code window merupakan sebuah jendela yang digunakan untuk menuliskan kode program dari kontrol yang dipasang pada jendela form dengan cara memilih terlebih dahulu kontrol tersebut pada kotak objek.Untuk lebih jelasnya, perhatikan ilustrasi gambar 2.11. berikut Gambar 2.11.Code Windows 8. Project Project merupakan suatu kumpulan module atau program aplikasi itu sendiri.Dalam Visual Basic, file project disimpan dengan nama file berakhiran VBP, dimana file ini berfungsi untuk menyimpan seluruh komponen program. Apabila membuat program aplikasi baru, maka secara otomatis project tersebut akan diisi dengan object form 1, dalam jendela project explorer ditampilkan suatu struktur hirarki dari sebuah project itu sendiri yang berisi semua item yang terkandung didalamnya, sepert yang tampak pada gambar 2.12 dibawah ini. Ganbar 2.12.Jendela Project Dengan project explorer kita dapat memilih objek yang kita buat dengan mudah.Untuk menampilkan jendela project explorer,gunakan prosedur berikut : • Klik tombol project explorer pada bagian toolbar standard • Pilih perintah view-project explorer • Shortcut key Ctrl+key Selain menampilkan nama project dan form,pada jendela explorer terdapat tiga tombol dengan penjelasan pada table 2.10. Tabel 2.10. Fungsi Tombol Pada Project Explorer Tombol Nama Fungsi View Code Menampilkan jendela code yang digunakan untuk menulis kode program yang terhubung dengan objek yang terpilih pada jendela form. View Object Menampilkan jendela objek untuk item yang terpilih pada form aktif. Toggel Object Menampilkan atau menyembunyikan folder yang menampung nama form dari suatu project. Pada dasarnya project terdiri dari beberapa file dengan fungsi yang berbeda,diantaranya : • Project file(.vbp),berfungsi sebagai file induk • Form file (.frm) • Binary file (.frx),berisi properti data dari kontrol yang terpasang pada bagian form • Class module file (.cls),bersifat opsional • Standard module (.bas),bersifat opsional • AvtiveX Control (.ocx), bersifat opsional • Single Resource File (.res), bersifat opsional Ketika fie project sudah lengkap dengan semua file pendukung,kita dapat mengkonversikan file project tersebut ke file excutable (.exe). BAB III PERANCANGAN ALAT 3.1 Blok Diagram Sistem Blok diagram merupakan penyederhanaan dari rangkaian yang menyatakan hubungan berurutan dari satu atau lebih rangkaian yang memiliki kesatuan kerja tersendiri. Blok diagram dari system antrian dengan menggunakan voice adalah sebagai berikut: Personal Kmputer (PC) + Speaker Tombol Utama Mikrokontroler AT89S51 DIisplay Utama Display Conter 1 Display Conter 2 Display Conter 3 Display Conter 4 Tombol Conter 1 Tombol Conter 1 Tombol Conter 1 Tombol Conter 1 Gambar 3.1. Blok Diagram Berikut ini adalah prinsip kerja blok diagram, yaitu : a. Komputer berfungsi memberikan menunggu penekanan dari salah satu dari kelima tombol yang ada. Selain itu computer juga berfungsi untuk mengirimkan data ke mikrokontroler, data ini merupakan data dari nilai – nilai yang akan ditampilkan pada masing – masing display. Ada 5 display yang akan menampilkan data, karena itu computer tidak dapat langsung mengendalikan kelima display tersebut, maka digunakan mikrokontroler untuk membantu computer dalam mengendalikan kelima display tersebut. Komputer ini juga dilengkapi dengan speaker untuk mengeluarkan suara panggilan kepada pelanggan sesuai dengan nomor urutnya dan counter penerimanya. b. Mikrokontroler AT89S51 berfungsi untuk menerima data dari computer kemudian menampilkan nilai – nilai ke masing – masing display. Ada 5 display yang akan dikendalikan oleh mikrokontroler, yaitu display utama, display counter 1 sampai display counter 4. c. Tombol utama pada alat ini berfungsi untuk menghitung jumlah pelanggan yang datang, jadi setiap tombol ini ditekan, maka nilai pada display utama akan bertambah. Tombol ini juga sebagai penentu nomor urut pelanggan yang datang pada saat itu. d. Display Utama pada system ini berfungsi untuk menampilkan banyaknya jumlah pelanggan yang dating. e. Tombol 1 pada system ini berfungsi untuk menyatakan kepada system bahwa counter 1 dalam keadaan kosong dan siap untuk menerima pelanggan lain. Jika tombol ini ditekan, maka system akan menampilakn nomor urut berikutnya pada display 1 kemudian memanggil nomor urut tersebut untuk datang ke counter1. Cara kerja yang sama juga terjadi pada tombol 2, tombol 3 dan tombol 4. f. Display counter1 berfungsi untuk menampilkan nomor urut pelanggan yang sedang dilayani pada counter 1. Hal yang sama juga terjadi pada display counter 2, display counter 3 dan display counter 4. 3.2 Perancangan Rangkaian Power Supplay (PSA) Rangkaian power supplay berfungsi untuk mensupplay tegangan ke seluruh rangkaian. Rangkaian PSA yang dibuat terdiri dari satu keluaran, yaitu 5 volt, keluaran 5 volt ini digunakan untuk menghidupkan seluruh rangkaian. Rangkaian power supplay adaptor ditunjukkan oleh gambar berikut ini, Gambar 3.2 Rangkaian Power Supplay (PSA) Trafo CT merupakan trafo stepdown yang berfungsi untuk menurunkan tegangan dari 220 volt AC menjadi 12 volt AC. Kemudian 12 volt AC akan disearahkan dengan menggunakan dua buah dioda, selanjutnya 12 volt DC akan diratakan oleh kapasitor 3300 µF. Regulator tegangan 5 volt (LM7805CT) digunakan agar keluaran yang dihasilkan tetap 5 volt walaupun terjadi perubahan pada tegangan masukannya. LED hanya sebagai indikator apabila PSA dinyalakan. III.3. Rangkaian Mikrokontroler AT89S51 Rangkaian ini berfungsi sebagai pusat kendali dari seluruh system yang ada. Kompoen utama dari rangkaian ini adalah IC mikrokontroler AT89S51. Pada IC inilah semua program diisikan, sehingga rangkaian dapat berjalan sesuai dengan yang dikehendaki. Rangkaian mikrokontroler ditunjukkan pada gambar berikut ini: Gambar 3.4 Rangkaian mikrokontroller AT89S51 Mikrokontroler ini memiliki 32 port I/O, yaitu port 0, port 1, port 2 dan port 3. Pin 32 sampai 39 adalah Port 0 yang merupakan saluran/bus I/O 8 bit. Pin 1 sampai 8 adalah port 1. Pin 21 sampai 28 adalah port 2. Dan Pin 10 sampai 17 adalah port 3 Pin 40 dihubungkan ke sumber tegangan 5 volt. Dan pin 20 dihubungkan ke ground. Rangkaian mikrokontroler ini menggunakan komponen kristal 12 MHz sebagai sumber clocknya. Nilai kristal ini akan mempengaruhi kecepatan mikrokontroler dalam mengeksekusi suatu perintah tertentu. Pada pin 9 dihubungkan dengan sebuah kapasitor 10 uF yang dihubungkan ke positip dan sebuah resistor 10 Kohm yang dihubungkan ke ground. Kedua komponen ini berfungsi agar program pada mikrokontroler dijalankan beberapa saat setelah power aktip. Lamanya waktu antara aktipnya power pada IC mikrokontroler dan aktipnya program adalah sebesar perkalian antara kapasitor dan resistor tersebut. Jika dihitung maka lama waktunya adalah : III. 4 Rangkaian Display (Seven Segmen) Rangkaian display seven segmen ini berfungsi untuk menampilkan nomor urut dari masing – masing pelanggan yang sedang dilayani pada masing – masing counter. Rangkaian display seven segmen ditunjukkan pada gambar 3.11 berikut ini : Gambar 3.5 Rangkaian Display Seven Segmen Display ini menggunakan 3 buah seven segmen common anoda yang dihubungkan ke IC 4094 yang merupakan IC serial to paralel. IC ini akan merubah 8 bit data serial yang masuk menjadi keluaran 8 bit data paralel. Rangkaian ini dihubungkan dengan P3.0 dan P3.1 AT89S51. P3.0 merupakan fasilitas khusus pengiriman data serial yang disediakan oleh mikrokontroler AT89S51. Sedangkan P3.1 merupakan sinyal clock untuk pengiriman data serial. Dengan menghubungkan P3.0 dengan IC serial to paralel (IC 4094), maka data serial yang dikirim akan diubah menjadi data paralel. Kemudian IC 4094 ini dihubungkan dengan seven segmen agar data tersebut dapat ditampilkan dalam bentuk angka. Seven segmen yang digunakan adalah tipe common katoda (aktip high), ini berarti segmen akan menyala jika diberi data high (1) dan segmen akan mati jika diberi data low (0). III. 4 Rangkaian Tombol Tombol utama pada alat ini berfungsi untuk menghitung jumlah pelanggan yang datang, jadi setiap tombol ini ditekan, maka nilai pada display utama akan bertambah. Tombol ini juga sebagai penentu nomor urut pelanggan yang datang pada saat itu. sedangkan tombol 1 pada system ini berfungsi untuk menyatakan kepada system bahwa counter 1 dalam keadaan kosong dan siap untuk menerima pelanggan lain. Jika tombol ini ditekan, maka system akan menampilakn nomor urut berikutnya pada display 1 kemudian memanggil nomor urut tersebut untuk datang ke counter1. Tombol utama, tombol 1, tombol 2, tombol 3, dan tombol 4 memiliki rangkaian yang sama. Masing – masing tombol ini dihubungkan ke port parallel computer. Dalam kondisi biasa, port paralel mendapatkan logika high (1), saat terjadi penakanan salah satu tombol, maka pin yang terhubung ke tombol tersebut akan terhubung ke ground, sehingga mengirimkan sinyal low (0). Perubahan kondisi dari high (1), menjadi low (0) inilah yang merupakan tanda adanya penekanan pada salah satu tombol. Rangkaian tombol ditunjukkan pada gambar berikut ini : Gambar Rangkaian Tombol 3.5 Perancangan Rangkaian Antar muka Paralel Port Rangkaian antar muka paralel port berfungsi untuk mengirimkan data dari komputer ke mikrokontroler yang merupakan data-data untuk mengendalikan tampilan dari masing – masing display yang ada pada masing – masing counter.. Rangkaian antar muka paralel port dengan mikrokontroler ditunjukkan pada gambar berikut : Rangkaian ini menggunakan konektor DB 25 yang merupakan konektor untuk paralel port. Konektor DB 25 ini langsung dihubungkan dengan mikrokontroler AT89S51, yaitu pada port 0 dan port 2. Dengan demikian, maka komputer dapat berkomunikasi dengan mikrokontroler. 3.6. DIAGRAM ALIR ( FLOW CHART ) Untuk mempermudah dalam menangani masalah yang dikerjakan maka terlebih dhulu disusun diagram alir ( Flow Chart ) program seperti yang ditunjukkan pada gambar dibawah MULAI Tidak PERINTAH Ya Cek Port DB25 YA Kirim Data / Nomor Urut ke IC AT89S51 Tampilkan Nomor Urut Pelanggan SELESAI . YA TOMBOL UTAMA TOMBOL 1 TOMBOL 2-4 Program ini dimulai dengan mulai ( start ) yang berarti rangkaian diaktifkan. Kemudian program akan dilanjutkan ke menu perintah, kemudian diteruskan ke cek port DB 25, data dari cek port DB25 akan memberikan sinyal YA dan TIDAK, apabila sinyalnya menunjukkan TIDAK maka istem akan dikembalikan kemenu perintah, dan apabila sinyalnya menunjukkan YA maka sistem akan terus dilanjutkan. Dari Cek Port pararel DB25 akan dikirim data / alamat port pararel ke tombol utama, tombol 1sampai tombol 4, kemudian data dikirim ke Mikrokontroler AT89S51 untuk menampilkan ke Display Seven segmen.Data akan dikrim ke ICAT89S51 dan di dalam IC tersebut akan mengubah data dari bahasa Visual basic ke bahasa mesin dan mengirimnya dalam bentuk nomor ( angka )dan suara. Kemudian program selesai dan akan dikembalikan ke bentuk awal untuk memasukkan data yang lainnya. BAB IV PENGUJIAN DAN ANALISA SOFTWARE 4.1 Pengujian Software Adapun tujuan pengujian software adalah untuk mengetahui bahwa program serta perangkat yang berhubungan dengan PC telah dapat menjalankan fungsinya dengan baik. Dalam pengujian ini diperlukan peralatan – peralatan sebagai berikut : 1. Komputer PC dengan spesifikasi pentium 1 ke atas. 2. Sistem operasi minimum Windows 98. 3. Program Visual Basic versi 6.0 4. Hardware (meliputi: konektor DB 25 dan rangkaian) Pengujian awal dilakukan dengan menghubungkan rangkaian ke PC, dimana DB 25 male dihubungkan ke DB 25 female yang ada di computer, selanjutnya membuat program dengan menggunakan bahasa pemrograman visual basic 6.0 untuk mengendalikan port parallel. IV.2 Pengujian Paralel Port Untuk mengendalikan port parallel dengan menggunakan bahas pemrograman visualbasic diperlukan sebuah dll. Pada perancangan ini digunakan io.dll. io.dll ini dimasukkan ke sistem32 pada windows selanjutnya mendeklarasikan penggunaan io.dll pada listing program. Deklarasi io.dll pada bahasa pemrograman visual basic adalah sebagai berikut: Private Declare Sub PortOut Lib "IO.DLL" (ByVal Port As Integer, ByVal Data As Byte) Private Declare Function Portin Lib "IO.DLL" (ByVal Port As Integer) As Byte Langkah selanjutnya adalah mengendalikan port parallel, dimana port parallel berada pada alamat port [378]. Programnya sebagai berikut: PortOut &H378, &H1 Perintah ini akan memberikan data logika high pada D0 dan logika low pada D1 s/d D7, pada port 378 sebagai berikut: Tabel 4.1. Pengujian Pararel Port Out dan H378, dan H1 Pin9 Pin8 Pin7 Pin6 Pin5 Pin4 Pin3 Pin2 378 D7 D6 D5 D4 D3 D2 D1 D0 0 0 0 0 0 0 0 1 TP1 TP2 LED1 1.0k Ω LED2 1.0k Ω LED3 1.0k Ω LED4 1.0k Ω Paralel Port TP3 TP4 Gambar 4.1. Rangkaian Pengujian Pararel Port Out dan H378, dan H1 Dari hasil pengujian pada rangkaian di atas, didapatkan tegangan sebagai berikut: Tabel 4.2. Hasil Pararel Port Out dan H378, dan H1 Test Point TP 1 TP2 TP3 TP4 Tegangan 0,02 V 0,02 V 0,02 V 3,12 V LED LED1 Kondisi mati LED2 mati LED3 LED4 mati hidup Pengujian kedua dilakukan dengan memberikan data yang berbeda pada port parallel. Programnya sebagai berikut: PortOut &H378, &H2 Perintah ini akan memberikan data logika high pada D1 dan logika low pada D0 s/d D7, kecuali D1 pada port 378 sebagai berikut: Pin9 Pin8 Pin7 Pin6 Pin5 Pin4 Pin3 Pin2 378 D7 D6 D5 D4 D3 D2 D1 D0 0 0 0 0 0 0 1 0 TP1 TP2 LED1 1.0k Ω LED2 1.0k Ω LED3 1.0k Ω LED4 1.0k Ω Paralel Port TP3 TP4 Dari hasil pengujian pada rangkaian di atas, didapatkan tegangan sebagai berikut: Test Point TP 1 TP2 TP3 TP4 Tegangan 0,02 V 0,02 V 3,12 V 0,02 V LED LED1 Kondisi mati LED2 LED3 LED4 mati hidup mati Pengujian ketiga. Programnya sebagai berikut: PortOut &H378, &H4 Perintah ini akan memberikan data logika high pada D2 dan logika low pada D0 s/d D7, kecuali D2 pada port 378 sebagai berikut: Pin9 Pin8 Pin7 Pin6 Pin5 Pin4 Pin3 Pin2 378 D7 D6 D5 D4 D3 D2 D1 D0 0 0 0 0 0 1 0 0 TP1 TP2 LED1 1.0k Ω LED2 1.0k Ω LED3 1.0k Ω LED4 1.0k Ω Paralel Port TP3 TP4 Dari hasil pengujian pada rangkaian di atas, didapatkan tegangan sebagai berikut: Test Point TP 1 TP2 TP3 TP4 Tegangan 0,02 V 3,12 V 0,02 V 0,02 V LED LED1 Kondisi mati LED2 hidup LED3 LED4 mati mati Pengujian keempat. Programnya sebagai berikut: PortOut &H378, &H8 Perintah ini akan memberikan data logika high pada D3 dan logika low pada D0 s/d D7, kecuali D3 pada port 378 sebagai berikut: Pin9 Pin8 Pin7 Pin6 Pin5 Pin4 Pin3 Pin2 378 D7 D6 D5 D4 D3 D2 D1 D0 0 0 0 0 1 0 0 0 TP1 TP2 LED1 1.0k Ω LED2 1.0k Ω LED3 1.0k Ω LED4 1.0k Ω Paralel Port TP3 TP4 Dari hasil pengujian pada rangkaian di atas, didapatkan tegangan sebagai berikut: Test Point TP 1 TP2 TP3 TP4 Tegangan 3,12 V 0,02 V 0,02 V 0,02 V LED LED1 LED2 Kondisi hidup mati LED3 LED4 mati mati 4.3 Pengujian Rangkaian Power Supplay (PSA) Pengujian pada bagian rangkaian power supplay ini dapat dilakukan dengan mengukur tegangan keluaran dari rangkaian ini dengan menggunakan volt meter digital. Dari hasil pengujian diperoleh tegangan keluaran pertama sebesar + 5,1 volt. Tegangan ini dipergunakan untuk mensupplay tegangan ke seluruh rangkaian. Mikrokontroler AT89S51 dapat bekerja pada tegangan 4,0 sampai dengan 5,5 volt, sehingga tegangan 5,1 volt ini cukup untuk mensupplay tegangan ke mikrokontroler AT89S51. IV.4 Pengujian Rangkaian Mikrokontroller AT89S51 Untuk mengetahui apakah rangkaian mikrokontroller AT89S51 telah bekerja dengan baik, maka dilakukan pengujian.Pengujian bagian ini dilakukan dengan memberikan program sederhana pada mikrokontroller AT89S51. Programnya adalah sebagai berikut: Loop: Setb P3.7 Acall tunda Clr P3.7 Acall tunda Sjmp Loop Tunda: Mov r7,#255 Tnd: Mov r6,#255 Djnz r6,$ Djnz r7,tnd Ret Program di atas bertujuan untuk menghidupkan LED yang terhubung ke P3.7 selama ± 0,13 detik kemudian mematikannya selama ± 0,13 detik secara terus menerus. Perintah Setb P3.7 akan menjadikan P3.7 berlogika high yang menyebabkan LED mati. Acall tunda akan menyebabkan LED ini mati selama beberapa saat. Perintah Clr P3.7 akan menjadikan P3.7 berlogika low yang menyebabkan LED akan nyala. Perintah Acall tunda akan menyebabkan LED ini nyala selama beberapa saat. Perintah Sjmp Loop akan menjadikan program tersebut berulang, sehingga akan tampak LED tersebut tampak berkedip. Lamanya waktu tunda dapat dihitung dengan perhitungan sebagai berikut : Kristal yang digunakan adalah kristal 12 MHz, sehingga 1 siklus mesin membutuhkan waktu = 12 = 1 mikrodetik. 12 MHz Mnemonic Siklus Waktu Eksekusi MOV Rn,#data 2 2 x 1 µd = 2 µd DJNZ 2 2 x 1 µd = 2 µd RET 1 1 x 1 µd = 1 µd Tunda: mov r7,#255 2 Tnd: mov r6,#255 djnz r6,$ 2 255 x 2 = 510 x 255 djnz r7,loop3 = 131.070 = 131.073 2 1 ret Jadi waktu yang dibutuhkan untuk mengerjakan program di atas adalah 131.073 µdetik atau 0,131073 detik dan dapat dibulatkan menjadi 0,13 detik. Jika program tersebut diisikan ke mikrokontroller AT89S51, kemudian mikrokontroller dapat berjalan sesuai dengan program yang diisikan, maka rangkaian minimum mikrokontroller AT89S51 telah bekerja dengan baik. IV.5 Pengujian Rangkaian Display Seven Segmen Pengujian pada rangkaian ini dapat dilakukan dengan menghubungkan rangkaian ini dengan rangkaian mikrokontroler, kemudian memberikan data tertentu pada port serial dari mikrokontroler. Seven segmen yang digunakan adalah common anoda, dimana semen akan menyala jika diberi logika 0 dan sebaliknya segmen akan mati jika diberi logika 1. Dari hasil pengujian diperoleh data yang harus dikirimkan ke port serial untuk menampilkan angka desimal adalah sebagai berikut: Angka Data yang dikirim 1 0EDH 2 19H 3 89H 4 0C5H 5 83H 6 03H 7 0E9H 8 01h 9 81H 0 21H Program yang diisikan pada mikrokontroler untuk menampilkan nilai-nilai tersebut adalah sebagai berikut: bil0 equ 21h bil1 equ 0edh bil2 equ 19h bil3 equ 89h bil4 equ 0c5h bil5 equ 83h bil6 equ 03h bil7 equ 0e9h bil8 equ 01h bil9 equ 81h Loop: mov sbuf,#bil0 Jnb ti,$ Clr ti sjmp loop Program di atas akan menampilkan angka 0 pada semua seven segmen. Sedangkan untuk menampilkan 3 digit angka yang berbeda pada seven segmen adalah dengan mengirimkan ke 3 data angka yang akan ditampilkan pada seven segmen. Programnya adalah sebagai berikut : Loop: mov sbuf,#bil1 Jnb ti,$ Clr ti mov sbuf,#bil2 Jnb ti,$ Clr ti mov sbuf,#bil3 Jnb ti,$ Clr ti sjmp loop Program di atas akan menampilkan angka 1 pada seven segmen ketiga, angka 2 pada seven segmen kedua dan angka 3 pada seven segmen pertama. IV.6 Pengujian Rangkaian Tombol Pengujian pada rangkaian ini dapat dilakukan dengan menekan tombol, kemudian mengukur tegangan output dari rangkaian tersebut. Dari hasil pengujian didapatkan pada saat tombol tidak ditekan, maka output dari rangkaian ini adalah 4,9 volt. Ketika terjadi penekanan tombol, maka output dari rangkaian ini adalah 0 volt. Dengan demikian rangkaian ini telah berfungsi dengan baik. Pengujian selanjutnya adalah dengan menghubungkan rangkaian tombol ini dengan rangkaian mikrokontroler yang telah diberi program sebagai berikut : Jb P1.0,$ Setb P3.7 ...... Program di atas akan menunggu adanya sinyal low yang dikirimkan tombol, dimana tombol tersebut dihubungkan dengan P1.0. Program akan terus menunggu sampai ada sinyal low yang dikirimkan oleh tombol. Jika ada sinyal low yang dikirimkan oleh tombol, maka program akan menghidupkan LED indikator yang dihubungkan ke P3.7. BAB V KESIMPULAN DAN SARAN Kesimpula a. Dengan diterapkannya system simulasi ini sehingga dapat mengurangi antrian yang panjang ( lama ) untuk melakukan suatu transsaksi. b. Pada system simulasi ini suara yang dikeluarkan untuk pemanggialn nomor urut pelanggan harus terlebih dahulu diatur pada computer, sehingga suara yang keluar tidak mengalami kerusakan ( loses ). c. Pada perancangan ini port parallel yang digunakan ada pada alamat 378H, 379H dan 37AH d. Untuk mengaktipkan port parallel dengan menggunakan bahasa pemrograman visual basic dibutuhkan Dinamic Ling Library (DLL) tambahan, yaitu IO.DLL dan DLLPort.DLL. 1. Saran a. Diharapkan kedepannya alat ini dapat dikembangkan lagi, yaitu dilengkapi dengan printer untuk mencetak nomor pengunjung. b. Untuk mengetahui apakah rangkaian bekerja dengan normal, hendaknya perangkar lunak yang dirancang pada kmputer, ditambahkna lagi objek sebagai simulasi yang sebenarnya. Gambar Lengkap rangkaian percobaan.