TUGAS AKHIR RANCANG BANGUN SISTEM PENSORTIRAN BARANG BERDASARKAN TINGGI RENDAH BENDA BERBASIS PC ( Personal Computer )
Diajukan Sebagai Salah Satu Syarat Guna Memperoleh Gelar Sarjana Program Studi Teknik Elektronika
Disusun Oleh : Nama : SUMANTRI EKO PRASTOWO Nim
: 01401-058
JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS MERCU BUANA JAKARTA 2008
LEMBAR PENGESAHAN Yang bertandatangan dibawah ini: Nama
: SUMANTRI EKO PRASTOWO
NIM
: 01401-058
Jurusan
: Teknik Elektro
Fakultas
: Teknologi Industri
Judul Skripsi
: Rancang BangunSistem Pensortiran Barang Berdasarkan Tinggi Rendah Benda Berbasis PC
Dengan ini menyatakan bahwa hasil penulisan skripsi yang telah saya buat ini merupakan hasil karya sendiri dan keasliannya. Apabila ternyata dikemudian hari penulisan skripsi ini merupakan hasil plagiat atau penjiplakan terhadap karya orang lain, maka saya bersedia mempertanggungjawabkan sekaligus bersedia menerima sanksi berdasarkan aturan tata tertib di Universitas Mercu Buana. Demikian pernyataan ini saya buat dalam keadaan sadar dan tidak dipaksa.
Penulis
i
LEMBAR PENGESAHAN
RANCANG BANGUN SISTEM PENSORTIRAN BARANG BERDASARKAN TINGGI RENDAH BENDA BERBASIS PC (Personal Computer)
Diajukan Sebagai Salah Satu Syarat Guna Memperoleh Gelar Sarjana Program Studi Teknik Elektronika
Disusun Oleh: Nama : SUMANTRI EKO PRASTOWO NIM
: 01401-058
Mengetahui dan Mengesahkan:
Koordinator Tugas Akhir dan
Ketua Juusan Teknik Elektro
Dosen Pembimbing Tugas Akhir
Fakultas Teknologi Industi
(Yudhi Gunardi, ST,MT.)
(Ir. Budi Yanto Husodo, MSc.)
ii
KATA PENGANTAR
Puji Syukur Kehadirat Allah SWT yang telah memberikan rahmat dan hidayahnya kepada penulis, sehingga penulis dapat menyelesaikan Tugas akhir ini sebagai salah satu syarat guna menyelesaikan pendidikan terakhir di Universitas Mercu Buana. Secara khusus penulis mengucapkan terima kasih kepada Bapak dan Ibu sebagai orang tua penulis yang senantiasa memberikan dukungan dan doanya kepada penulis hingga tersusunya Tugas Akhir ini. Selama penyusunan Tugas Akhir ini penulis telah mendapat banyak bantuan dan dukungan yang sangat berarti dari berbagai pihak. Oleh karena itu pada kesempatan ini penulis mengucapkan terima kasih kepada: 1. Bapak Ir. Yudhi Gunardi, MT. ; selaku Dosen Pembimbing Jurusan Teknik Elektro yang merangkap Koordinator Tugas Akhir Serta Kepala Laboratorium PLC yang telah banyak memberikan bimbingan dan dukungannya dengan penuh kesabaran sehingga Tugas Akhir ini dapat terselesaikan. 2. Bapak Ir. Budi Yanto Husodo, MSc. ; selaku Kepala Jurusan Teknik Elektro yang turut memberikan masukan dan bantuan kepada penulis. 3. Bapak Jaja Kustija, MSc. ; selaku Kepala Laboratorium Teknik Elektro dan Dosen pengajar yag telah memberikan ilmu yang bermanfaat kepada penulis. Sehingga penulis mendapatkan pengetahuan untuk dituangkan dalam penyusunan Tugas Akhir. 4. Bapak Ir. Eko Ihsanto, M.Eng. ; selaku Dosen pengajar untuk peminatan Teknik Elektronika yang telah memberikan ilmu yang bermanfaat kepada penulis, sehingga penulis mendapatkan inspirasi untuk menyelesaikan Tugas Akhir ini. 5. Segenap Dosen pengajar FTI Jurusan Teknik Elektro Universitas Mercu Buana yang telah memberikan kuliah dan membekali penulis dengan pengetahun yang bermanfaat.
iii
6. Fardianto, Andi, dan Alif ; atas persahabatannya selama ini. 7. Juqni, Beni, Nani, Irma, Fitri ; selaku rekan mahasiswa peminatan Teknik Elektronika yang telah banyak memberikan dukungan selama masa kuliah. 8. Heri Setiawan, M. Rusli Sutiana, Leli Ambarwati, dan seluruh rekan-rekan mahasiswa peminatan Teknik Tenaga Listrik angkatan 2001 ; atas dukungan dan solidaritasnya. 9. Ageng Triadi, Ahmad Munadi, dan seluruh rekan-rekan mahasiswa Teknik Telekomunikasi angkatan 2001 ; yang juga telah banyak memberikan dukungan dan solidaritasnya. 10. Dana Sunandar, Rusmin Mulyadi,Ari Saputra serta segenap Staf dan karyawan CV. Partikhel ; yang telah banyak memberikan bantuan. 11. Tri Juniarto, Roby, Rama Baydilah, Dian Permana, Edo Malindo dan Martin W.S ; sahabat-sahabatku yang telah banyak membantu. Penulis menyadari bahwa penyusunan Tugas Akhir ini jauh dari kata sempurna, baik berupa penyusuna laporan Tugas Akhir Maupun dalam perancangan perangkat. Oleh karena itu penulis berharap kepada pihak-pihak terkait untuk dapat memberikan saran yang bersifat membangun, sehingga penulisan Tugas Akhir ini akan menjadi lebih baik dan bermanfaat. Akhir kata penulis mengharapkan agar Tugas Akhir ini dapat memberikan pengetahuan dan inspirasi yang bermanfaat bagi semua pihak yang membutuhkan.
Tangerang, Agustus 2008
Penulis
iv
ABSTRAK
Pada Tugas Akhir ini di bahas tentang perancangan sistem pengaturan sistem persortiran barang berdasarkan tinggi rendah benda berbasis PC (personal Computer). Perangkat keras pada alat ini terdiri dari rangkaian sensor infra merah yang perancangannya mengunakan Infrared. Benda yang sampai pada infraRed akan memicu kuat lemahnya tegangan dari Infrared, serta rangkaian antarmuka Pararel Port Printer atau yang disebut juga sebagai DB-25 sebagai penghubung antara perangkat luar (peripheral) dengan komputer. Output dari Infrared merupakan input dari Pararel port printer. Sinyal yang diterima oleh sensor Infrared selanjutnya dikenali dan diproses melalui perangkat lunak Delphi 7.0. setiap input yang diterima mencerminkan suatu gerakan tertentu pada konveyor berjalan menurut ada tidaknya benda. Ketika Infrared1 mendeteksi bahwa benda ada maka selanjutnya konveyor akan berjalan dan infrarRed2 akan mendeteksi lagi masuk golongan mana benda tersebut sesuai dengan tinggi rendah. Setelah benda terdeksi menurut tinggi rendah maka konveyor2 akan menentukan pengepakan barang berdasarkan tata letak benda.
v
ABSTRACT
This final assignment explain about design the regulate system of goods sorting system based on high low goods that have PC (Personal Computer) basic. This hardware Consist of infrared censor combination whichis designed by infrared, and also pallel port printer combination or usually called DB-25 as connection between outside ware with computer. Output from infrared is input from parallel port printer. The signal accepted by infrared censor then knowed and processed by the Delphi 7.0. software. Every input that accepted reflecting existence or non existence of the goods. When infrared detect that there is something, then konveyor will be take a stroll and infrared detecting again into which group of the goods match ith the low. After the goods detected by the high low, then konveyor packing based on the lay out.
vi
DAFTAR ISI
Lembar Pernyataan………………………………………………………...…...
i
Lembar Pengesahan……………………………………………………...……..
ii
Kata Pengantar……………………………………………………...………….. iii Abstrak………………………………………………………………...………..
v
Abstract……………………………………………………………...…………. vi Daftar Isi……………………………………………...………………………… vii Daftar Gambar……………………………………...…………………………... xi Daftar Tabel……………………………………...……………………………...xiii
BAB I PENDAHULUAN 1.1
Latar Belakang………………………….…………...………..………… 1
1.2
Tujuan Penulisan…………………………………….……….…………. 1
1.3
Batasan Masalah………………………………………………………... 2
1.4
Sistematika Penulisan…………………………………………………... 2
BAB II LANDASAN TEORI 2.1
Mikroprosesor………………………………………………………….. 4
2.2
Tranceiver (74LS245)…………………………………………………... 9
2.3
Pengiriman Data Parallel……………………………………………….. 10
2.4
Komunikasi Data……………………………………………………….. 12
2.5
Pengenalan Delphi……………………………………………………… 13
vii
2.5.1 Konfigurasi Sistem……………………………………………... 15 2.5.2 Hardware………….……...…………………………………….. 15 2.5.3 Software…………….…………………...……………………... 15 2.6
Motor Stepper……….…………………………………………………. 15 2.6.1 Tipe Motor Stepper Berdasarkan Magnet Yang Digunakan…………………………………………………….… 18 2.6.2 Tipe Motor Stepper Berdasarkan Perancangan Rangkaian Pengendali…………………………………………... 22
2.7
Tansistor……………….………………………………………………. 25
2.8
Doida…………………..………………………………………………... 32
2.9
Kapasitor………………………..………………………………………. 33
2.10
Rangkain Penyearah……………………………………………………. 35
2.11
Sensor Inframerah…………...………………………………………… 36 2.11.1 Dioda Inframerah……………………………………………….. 36 2.11.2 Photo Dioda…………………………………………………….. 36
BAB III PERANCANGAN SISTEM 3.1
Diagram Blok Perancangan Sistem Keras………………….…………. 37
3.2
Rangkaian Antar Muka……..………………………………………….. 39 3.2.1 Diagram Pin Parallel Port Printer….…………………………... 39 3.2.2 Sinyal Parallel Port Printer………….…………………………. 41
3.3
Perancangan Perangkat Keras……..…………………………………… 42 3.3.1 Rangkain Tranceiver……………….…………………………... 42
viii
3.3.2 Rangkaian Multiplexer……….………………………………… 44 3.3.3 Rangkaian Catu Daya…………….……………………………. 45 3.3.4 Rangkaian Sensor Infrared………….………………………….. 46 3.3.5 Motor Stepper…………….……………………………………. 48 3.3.6 Rangkaian Pengendali Motor Stepper…….…………………… 50 3.4
Perancangan Perangkat Lunak………………………………..……….... 52
BABIV PENGUJIAN DAN ANALISA SISTEM 4.1
Pengujian Dan Analisa Sistem…………………………..……………… 56
4.2
Pengukuran dan Pengujian Tegangan Catu Daya…………………..…... 56 4.2.1 Pengukuran Tegangan Catu Daya Regulator LM 7805……………………………………...……... 57 4.2.2 Pengukuran Tegangan Catu Daya Regulator LM 7818……………………….…………..………... 58
4.3
Pengujian Tranceiver………..………………………………………….. 60
4.4
Pengujian Driver Stepper Motor………………………….…………… 61
4.5
Pengujian Putaran Motor Stepper……………………..……………….. 64 4.5.1 Pengujian Putaran Motor Stepper Tanpa Beban Dengan Kecepatan Tertentu……………………………………. 64 4.5.2
Pengujian Putaran Motor Stepper Menggunakan Beban Dangan Sama………………………………………... 65
BAB V PENUTUP
ix
Kecepatan
5.1
Keimpulan………………………………………………………………. 73
5.2
Saran-saran……………………………………………………………… 73
Daftar Pustaka………………………………………………………………….. xvi Lampiran
x
DAFTAR GAMBAR
Gambar 2.1
Sistem Berdasarkan Mikroprosesor…………………………… 4
Gambar 2.2
Diagram Pin IC 74LS245……………………………………… 9
Gambar 2.3
Ilustrasi Putaran Rotor Terhadap Stator………………………. 18
Gambar 2.4
Variable Reluctance Motor……………………………………. 19
Gambar 2.5
Motor Stepper Tipe Magnet Permanen………………………… 21
Gambar 2.6
Unipolar Stepper Motor………………………………………... 22
Gambar 2.7
Bipolar Stepper Motor ………………………………………… 24
Gambar 2.8
Simbol Dan Lapisan Semikonduktor Transistor……………….. 25
Gambar 2.9
a. Transistor Dengan Dioda Yang Saling Berhadapan…………. 26 b. Transistor Dengan Dioda Yang Saling Bertolak Belakang….. 26
Gambar 2.10 Grafik Karakteristik Transistor………………………………… 28 Gambar 2.11 Transistor Dengan Rangkaian Luar…………………………….. 29 Gambar 2.12 Perpaduan Grafik Karakteristik Dan Garis Beban……………... 30 Gambar 2.13 Transistor Sebagai Switch Tertutup……………………………. 31 Gambar 2.14 Transistor Sebagai Switch Terbuka…………………………….. 32 Gambar 2.15 Simbol-simbol Dioda…………………………………………… 33 Gambar 2.18 a. Simbol Kapasitor Non Elektrolit…………………………….. 34 b. Simbol Variable Kapasitor…………………………………... 34 Gambar 2.17 Simbol Kapasitor Elektrolit…………………………………….. 34 Gambar 2.18 Penyearah Setengah Gelombang………………………………... 35 Gambar 2.19 Penyearah Gelombang Dengan Transformator Center Tap……. 36
xi
Gambar 3.1
Blok Diagram Perancangan Sistem…………………………….. 37
Gambar 3.2
Diagram Pin DB-25…………………………………………….. 41
Gambar 3.3
Rangkaian Tranceiver…………………………………………... 43
Gambar 3.4
Multiplexer Dan Data Antara DB-25 Dengan IC 74LS157……. 44
Gambar 3.5
Rangkaian Catu Daya 5 Volt Dan 18 Volt Dengan IC Regulator LM7805 Dan LM7818…………………. 45
Gambar 3.6
Simbol Led DiodaInfa Merah………………………………….. 47
Gambar 3.7
Photo Dioda……………………………………………………. 47
Gambar 3.8
Cara Kerja Dioda Proteksi (Pengaman)………………………... 51
Gambar 3.9
Rangkaian Pengendali Motor Stepper…………………………. 52
Gambar 3.10 Tampilan Form Program……………………………………….. 53 Gambar 3.11 Diagram Alir Program…………………………………………. 54 Gambar 4.1
RAngkaian Bus Tranceiver Dengan Menggunakan 8 Led…….. 61
xii
DAFTAR TABEL
Tabel 2.1
Pemakaian Alamat I/O Port………………………………………. 8
Tabel 2.2
Kebenaran Tranceiver……………………………………………... 9
Tabel 2.3
Pemberian Pulsa (data) Motor Stepper………………………….... 20
Tabel 2.4
Urutan Data Motor Stepper Tipe Unipolar (Torsi Normal)……..... 23
Tabel 2.5
Urutan Data Motor Stepper Tipe Unipolar (Torsi Besar)………… 23
Tabel 2.6
Urutan Data Motor Stepper Tipe Bipolar………………………… 25
Tabel 3.1
Fungsi Pin Konektor DB-25 Dan Centronics…………………….. 40
Tabel 3.2
Gambar Sinyal Parallel Port……………………………………..... 41
Tabel 3.3Metode Operasi IC 74LS245……………………...………………...... 44 Tabel 4.1Pengukuran Regulator 5 Volt………………………………………… 57 Tabel 4.2Pengukuran Regulator 18 Volt……………………………………….. 58 Tabel 4.3Data Pengujian Bit 0 Driver Motor Stepper………………………….. 62 Tabel 4.4Data Pengujian Bit 1 Driver Motor Stepper...………………………... 63 Tabel 4.5Data Pengujian Bit 2 Driver Motor Stepper………………………….. 63 Tabel 4.6Data Pengujian Bit 3 Driver Motor Stepper………………………….. 63 Tabel 4.7Hasil Pengamatan Putaan Motor Stepper Tanpa Beban...……………. 65 Tabel 4.8 Hasil Pengujian udut Rotasi Motor Stepper Dengan Beban…………. 67
xiii
BAB I PENDAHULUAN
1.1
Latar Belakang Pada masa sekarang kemajuan di bidang Teknik Elektronika tidak terlepas
dari kemajuan pada bidang komputerisasi. Keduanya akan saling mendukung dan saling membutuhkan. Pengepakan dalam dunia industri sekarang ini menuntut sebuah sistem yang dapat bekerja secara otomatis. Dalam sebuah pengepakan dengan benda berbagai bentuk dan variasi, diperlukan sebuah sistem pensortiran berdasarkan bentuk benda atau barang tersebut. Tugas Akhir ini merancang sebuah alat berupa Rancang Bangun Sistem Pensortiran Barang Berdasarkan Tinggi Rendah Benda Berbasis PC (Personal Computer), yang diaplikasikan untuk mempermudah otomatisasi pensortiran benda berbagai bentuk, kelayakan kualitas jual dan meningkatkan produktifitas.
1.2
Tujuan penulisan Tujuan dari Tugas Akhir ini adalah untuk mengaplikasikan alat berupa
Rancang bangun sistem pensortiran benda berdasarkan tinggi rendah benda dalam suatu industri pensortiran dan pengepakan barang secara otomatis. Dengan ini manusia akan mendapat banyak kemudahan, karena alat ini dapat di perintahkan untuk mengerjakan hal – hal yang dapat membahayakan manusia. Karena dalam
1
dunia industri, suatu proses produksi ditentukan oleh suatu sistem dari mesin industri yang mampu bekerja secara maksimal untuk dapat memenuhi terget produksi dalam jangka waktu yang telah ditetapkan.
1.3
Batasan Masalah Masalah yang akan dibahas pada Tugas Akhir Rancang bangun sistem
pensortiran benda berdasarkan tinggi rendah benda berbasis PC ini, dibatasi pada hal - hal sebagai berikut: 1.
Kontruksi dan perancangan pensortiran barang
2.
Cara kerja sistem alat pensortiran barang berdasarkan tinggi rendah barang secara otomatis.
3.
Menerangkan proses alat pengantar barang sampai dikoordinat yang telah ditentukan
4.
Perangkat lunak yang digunakan pada rancang bangun sistem ini adalah Delphi 7.0.
1.4
Sistimatika Penulisan Untuk memudahkan pemahaman dari penulisan tugas akhir ini, penulis
membagi penulisan dalam lima bab yaitu;
2
Bab I
PENDAHULUAN Pada bab ini berisikan latar belakang, tujuan, batasan masalah dan sistimatika penulisan.
Bab II
LANDASAN TEORI Pada Bab ini di bahas mengenai teori dasar tentang komponen pendung yang menunjang dengan perancangan alat serta dijelaskan mengenai komponen – komponen penting dari alat yang akan dipakai.
Bab III
PEANCANGAN SISTEM Pada Bab ini perancangan merupakan inti dari penulisan tugas akhir ini. Dimana pada bab ini memaparkan tahap-tahap perancangan alat mulai dari tujuan, antar muka, perancangan sampai ketahap perakitan alat.
Bab IV
PENGUJIAN DAN ANALISA SISTEM Pada bab ini, merupakan pengujian dan analisa sistem.
Bab V
PENUTUP Bab ini berisikan kesimpulan akhir dari perancangan alat dan saran lebih lanjut untuk penyempurnaan alat.
3
BAB II LANDASAN TEORI
2.1.
Mikroprosesor Istilah mikroprosesor berasal dari kata microprossesor, yang secara kasar
dapat diterjemahkan sebagai pemroses mikro atau pengolah mikro. Secara fisik mikroprosesor adalah sebuah keping (chip) kecil, yang merupakan integrasi dari suatu rangkaian elektronika yang rumit, yang dirancang untuk mengerjakan pekerjaan – pekerjaan yang kompleks. Mikroprosesor adalah piranti VLSI (Very Large-Scale Integration) yang dapat diprogram untuk melaksanakan sejumlah fungsi dan instruksi. Dalam sebuah sistem mikroprosesor chip disebut unit pengolah pusat (Central Processing Unit) atau CPU. Mikroprosesor yang biasa digunakan pada PC pribadi adalah mikroprosesor 8088. Mikroprosesor ini termasuk keluarga µP iApx86, diantaranya adalah 80286, 80386, 80486. Organisasi dasar dari sistem berdasarkan mikroprosesor 8-bit dapat dilihat pada gambar 2.1.
Gambar 2.1. Sistem Berdasarkan Mikroprosesor
4
Gambar 2.1. menunjukan hubungan antara elemen yang satu dengan yang lain didalam sebuah sistem yang umum. Sistem ini terdiri dari: 1. Unit Pengolahan Pusat (CPU) CPU
(Central Prosessing Unit), yang dianggap sebagai ‘otak’
sebuahsistem komputer, mengorganisasikan semua operasi yang terjadi di dalam komputer. Operasi perpindahan data, operasi aritmatika dan logika dan pengendalian piranti masukan dan keluaran beserta seluruh sumber daya yang ada, dikendalikan oleh CPU. 2. Memori Chips (RAM dan ROM) Memori komputer digunakan untuk menyimpan data maupun instruksi – intruksi program. Ada dua jenis memori yang digunakan dalam komputer, yaitu : RAM (Random Access Memory) dan ROM (Read Only Memory). RAM menyimpan data dan intruksi program yang sedang dijalankan oleh komputer, RAM ini bersifat sementara, yang berarti isinya akan hilang begitu catu daya dimatikan. Berbeda dengan ROM, ROM bersifat permanen, data – data pada ROM tidak akan hilang meskipun catu daya komputer dimatikan ROMbiasanya digunakan untuk menyimpan instruksi – intruksi initial boot Up , yaitu instruksi – intruksi ini berfungsi untuk mempersiapkan komputer agar dapat digunakan sebagaimana mestinya. 3. Piranti masukan/keluaran (I/O devices) Piranti masukan/keluaran (I/O device) adalah piranti – piranti eksternal yang dibutuhkan oleh komputer untuk menghubungkan dengan dunia luar.
5
Beberapa
piranti
yang
dapat
dikatagorikan
sebagai
piranti
masukan/keluaran adalah sebagai berikut: a. Layar monitor (untuk keperluan penampilan suatu peroses dan hasil proses tersebut) b. Keyboard ( untuk pemasukan data berupa teks maupun baris – baris perintah). c. Printer (untuk keperluan pencetakan) d. Mouse, dan lain - lain 4. Adress Decoder Chips Setiap lokasi memory chips mempunyai alamat unik 16-bit (dua byte) sehingga mempunyai range alamat 0000 – FFFF (216 = 65536 byte = 64 Kbyte) alamat. Byte tertinggi dari alamat, bit A8 – A15 (dua digit heksa desimal di sebelah kiri) disebut dengan halaman. 5. Input dan Out Put Interface Chips (PIO) PIO (Parallel Input Output) yang juga sering disebut PIA (Parallel Interface Adaptor) adalah antarmuka masukan/keluaran parallel yang dapat di-program dan bertindak sebagai antar muka parallel. Unit antarmuka I/O bersifat bidirectional, menyediakan sambungan ke sistem dengan piranti-piranti peripheral. Gerbang alamat akan memilih chip yang sesuai untuk dialamati CPU. 6. Struktur Bus Ada tiga jenis bus didalam system berdasarkan mikroprosesor:
6
•
Bus Data Digunakan untuk mentransfer data antara CPU dan elemen-elemen lain didalam sistem. Karena data harus dimasukkan dan dikeluarkan dari mikroprosesor , bus data harus bidirectional.
•
Bus Alamat Digunakan untuk membawa alamat dari lokasi memori untuk mengambil data agar dapat dibaca, atau untuk menyimpan agar dapat di tulis. Bus alamat ini juga digunakan untuk mengamati elemen-elemen lain di dalam sistem seperti unit antar muka masukan/keluaran. Bus alamat adalah Unidirectional, yang mampu membawa informasi digital 16 bit secara bersamaan.
•
Bus Kontrol Bus kontrol membawa semua isyarat kontrol dari CPU. Bus kontrol melakukan empat fungsi utama : 1. Penyesuaian memori 2. Penyesuaian masukan/keluaran 3. Penjadwalan CPU, misalnya interupsi 4. Tugas lain seperti reset dan detak
7
Tabel 2.1. Pemakaian Alamat I/O port Alamat Port 000H-00FH 010H-01FH 020H-02FH 030H-03FH 040H-05FH 060H-06FH 070H-07FH 080H-09FH 0A0H-0AFH 0B0H-0BFH 0C0H-0CFH 0D0H-0DFH 0E0H-0EFH 0F0H-0FFH 100H-1EFH 1F0H-1FFH 200H-20FH 210H-21FH 220H-24FH 250H-26FH 270H-27FH 280H-2AFH 2B0H-2DFH 2E0H-2EFH 2F0H-2FFH 300H-31FH 320H-32FH 330H-35FH 360H-36FH 370H-37FH 380H-38FH 390H-39FH 3A0H-3AFH 3B0H-3BFH 3C0H-3CFH 3D0H-3DFH 3E0H-3EFH 3F0H-3FFH
IBM PC XT DMA Controller Undocumented Interup Controller Undocumented Timer Parallel Port Undocument DMA Page Registers NMI Mask Register Undocumented Reserve Undocument Reserved Undocument Undocument Undocument Game I/O adapter Expansion uniter Reseved Undocumented Parallel printer 2 Undocumented Alternate EGA Undocumented Secondary asyn adapter Prototype Card Fixed disk adapter Undocumented Undocumented Parallel printer Secondary bisyn controllel Undocumented First bisyn controllel Monocrome display EGA CGA Reseved Floppy disk adapter
IBM PC AT DMA Controller Reserve Interup Controller 1 Interup Controller 1 Timer Keyboard RTC, NMI mask DMA Page Registers Interup Controller 2 Interup Controller 2 DMA Controller 2 DMA Controller 2 Reserved Math coprocessor Available for I/O channel Fixed disk Game I/O adapter Reseved Available for I/O channel Available for I/O channel Parallel printer 2 Available for I/O channel Alternate EGA GPIB 0,Data ecquistion 0 Serial port 2 Prototype Card Available for I/O channel Available for I/O channel PC network Parallel printer 1 Secondary bisyn controllel Cluster adapter First bisyn controllel Monocrome display EGA Adapter CGA Available for I/O channel Floppy disk adapter
8
2.2.
Tranceiver (74LS245) 74LS245 adalah oktal bus transmitter atau receiver yang didesain untuk 8
jalur secara asynchronous, data komunikasi dua arah diantara data bus. Direction input (DR) mengontrol pengiriman data dari bus A ke bus B atau sebaliknya tergantung pada logic levelnya. Enable input (E) dapat digunakan untuk mengisolasi bus.
Gambar 2.2. Diagram Pin IC 74LS245
Tabel 2.2. kebenaran Transceiver INPUT
OUTPUT
E
DIR
TRANSFER DATA A
L
L
DARI BUS B KE BUS A
L
H
DARI BUS A KE BUS B
9
2.3.
Pengiriman Data Pararel Transfer data secara pararel merupakan transfer data yang relatif lebih
mudah dan lebih cepat dibandingkan transfer data secara serial. Walaupun demikian, transfer data ini masih dapat dibagi menjadi empat tata cara komunikasi yaitu: A. Single I/O Contoh transfer data kelompok ini adalah Jika akan mengeluarkan data ke peraga Led (0 = mati, 1 = hidup), atau untuk memasukkan data dari thermostat sederhana, yang senantiasa ada dan siap digunakan. B. Simple Strobe I/O Pada kelompok ini sinyal hanya akan ada pada saat – saat tertentu dan harus dibaca pada saat itu juga. Contohnya adalah data hanya akan ada jika keyboard ditekan. C. Single Handshake I/O Contoh data jenis ini adalah printer pararel. Mikroprosesor mengeluarkan sinyal strobe printer ke printer, seolah – olah mengeluarkan “ada data untukmu, terimalah”. Jika siap, printer mengeluarkan sinyal pengakuan (acknowledge) telah menerima data dari mikroprosesor, dan seolah – olah mengatakan “data sudah saya terima, silahkan kirim yang lainnya”. Percakapan antara mikroprosesor dan printer membentuk suatu protokol jabat tangan (Handshake).
10
D. Double handshake Data transfer Kelompok transfer data ini hampir sama dengan single handshake, tetapi lebih ditingkatkan dengan percakapan antara mikroprosesor dengan peripheral dan dapat diibaratkan sebagai percakapan antara pengirim dengan penerima. Pertama, pengirim mengatakan”anda siap?” (ditandai STB low). Penerima menjawab “ saya siap” (sinyal ACK high), selanjutnya pengirim mengatakan “inilah data untuk anda “ (yang ditandai sinyal STB high). Akhirnya penerima menutup pembicaraan dengan sinyal ACK low seraya mengatakan “data andatelah saya terima”, Terima kasih, saya siap menerima data yang lainnya. Setiap komputer menyajikan karakter – karakter dalam bentuk data. Data yang akan dibawa pada umumnya melalui suatu kanal telekomunikasi. Semua sistem komunikasi data dianggap membawa data yang terdiri dari sederetan angka biner, atau bit (binary digital), dan setiap bit bernilai 1
dan 0.
Komputer menyimpan informasi dalam bentuk byte yang masing – masing terdiri dari 8 bit, cara yang mudah mengirimkan suatu byte informasi adalah dalam bentuk pararel. Pada pengiriman data pararel, bit – bit data dikirimkan sekaligus atau secara bersamaan, misalnya 8 bit data dikirimkan serempak melalui 8 jalur komunikasi. Jalur komunikasi ini juga disebut antar muka pararel atau biasa juga disebut adapter parallel. Setiap rangkaian antar muka parallel selalu memiliki sebuah buffer dengan keluaran tiga keadaan. Antara muka pararel memiliki penahan (Latch), dan
11
penggerak transmisi (bus Driver) yang dilengkapi dengan sebuah buffer masukan serta buffer keluaran. Fungsi penahan (Latch), buffer masukan dan baffer keluaran ialah menahan sinyal – sinyal data dari CPU selama beberapa saat, sampai diterima data baru yang dikirimkan oleh CPU. Antar muka pararel akan memindahkan data secara cepat dan relatif lebih mudah untuk dioperasikan. Pada siste pengiriman data secara pararel diperlukan sejumlah penghantar untuk mengirimkan data, oleh karena itu sistem pengiriman data secara pararel hanya ekonomis untuk jarak pendek.
2.4.
Komunikasi Data Komunikasi data memegang peranan penting dewasa ini terutama yang
berhubungan dengan teknik rekayasa. Di dalam komunikasi yang hendak disampaikan ialah sebuah informasi. Informasi ini dapat berupa suara, tulisan atau gambar. Walaupun semua bentuk informasi saat ini dapat dipandang sebagai data akan tetapi pada umumnya yang dianggap sebagai data adalah informasi atau sinyal yang dapat diolah lebih lanjut oleh perangkat pengolah data yang umumnya adalah komputer. Komunikasi data merupakan bentuk khusus dari komunikasi secara umum. Komunikasi data berkaitan dengan komunikasi antara media ke mesin, dan dalam pokok pembahasan makalah di sini yang dimaksudkan adalah komunikasi antara komputer ke peralatan pengendali melalui Pararel port printer melalui slot perluasan komputer pribadi.
12
Secara umum komunikasi data dapat dikatakan sebagai proses pengiriman data yang telah dirubah dalam suatu kode tertentu yang telah disepakati melalui media listrik atau optik (seperti; ASCH,BCD,EBCDIC dari suatu tempat lainnya. Komunikasi data memerlukan 3 komponen dasar untuk melakukan prosesnya, yaitu ; Sumber (source), penerima (Receiver) dan media penghubung (media transmisi). •
Sumber (source) adalah pihak yang mengirimkan informasi data, dalam hal ini komputer yang melakukan pengaturan dalam pengiriman data.
•
Media Transmisi, yaitu tempat informasi tersebut disalurkan ke tempat tujuan, dalam pembahasan ini media transmisi yang digunakan adalah kabel yang dihungkan dari slot perluasan pada PC ke rangkaian pengendali.
•
Penerima (Receiver), ialah alat yang menerima informasi yang dikirimkan, dalam pembahasan di sini alat yang dimaksudkan sebagai penerima ialah rangkaian saklar sebagai rangkaian pengendali.
2.5.
Pengenalan Delphi Delphi adalah sebuah bahasa pemrograman visual didalam linhkungan
Windows (under Windows) yang menggunakan bahasa pacal sebagai compiler. Keberadaan bahasa pemrograman Delphi tak dapat dipisahkan dari bahasa turbo pasal karena Delphi merupakan generasi dari turbo pascal yang diluncurkan pada
13
tahun 1983 oleh Borland Internasional Incorporation. Turbo pascal memang dirancang untuk dijalankan pada system operasi DOS yang merupakan system operasi yang banyak digunakan pada saat itu. Seiring dengan perkembangan jaman, dimana system operasi mulai ‘bergeser’ ke system operasi windows, maka Borland International Incorporation merilis turbo pascal for windows yang dijalankan dibawah system operasi windows 3.x. Pada tahun 1992 muncul bahasa pemrograman baru bernama Borland Pascal versi 7 yang merupakan penggabungan dari turbo pascal for windows. Namun bahasa pemrograman baru terebut ternyata masih sulit digunakan. Trend penggunaan bahasa pemrograman visual untuk membangun sebuah aplikasi telah mendorong Borland membuat bahasa pemrograman baru. Pada tahun 1995 diperkenalkan ke pengguna computer sebuah pemrograman visual yang berbasis bahasa pascal. Bahas pemrograman bau tersebut diberi nama Borland Delphi, Borland Delphi berusaha menyempurnakan bahasa Delphi ini untuk emakin mempermudah penggunanya. Pemrograman Delphi dapat mempersingkat waktu pemrograman. Karena anda tidak perlu lagi menuliskan kode program yang rumit dan panjang untuk menggambar, meletakkan dan mengatur komponen. Selain itu Delphi juga dapat menyusun aplikasi yang lebih interaktif. Delphi menyediakan cukup banyak komponen interface aplikasi.
14
2.5.1. Konfigurasi Sistem Agar Delphi versi 7.0. atau lebih dapat diopeasikan dengan baik anda membutuhkan perangkat lunak dengan spesifikasi tertentu.
2.5.2. Hardware Delphi memerlukan perangkat keras (hardware) dengan ruang harddisk dan memori yang relative besar untuk menyimpan program dan run-time, spesifikasi minimal yang dibutuhkan antara lain: •
Processor 80586, tapi sangat disarankan menggunaan processor Pentium.
•
Memori 16 Megabyte atau lebih untuk computer tunggal.
•
Ruang harddisk untuk instalasi minimum sekitar 130 Megabyte.
2.5.3. Software Sedangkan untuk menjalankan bahasa pemrograman Borland Delphi 7.0. atau lebih, anda membutuhkan system operasi Windows 95 atau system operasi terbaru.
2.6.
Motor stepper Motor stepper merupakan motor listrik yang tidak mempunyai komutator,
dimana semua lilitannya merupakan bagian dari stator, dan pada rotornya hanya merupakan magnet permanen. Semua komputasi setiap lilitan harus dikontrol secara eksternal sehingga motor stepper ini dapat dikontrol. Prinsip kerja motor stepper sama seperti motor a.c, yaitu membangkitkan medan magnet berputar oleh arus yang melewati stator yang menyebabkan rotor bergerak. Perbedaan antara
15
motor a.c dengan motor stepper (motor d.c) adalah motor a.c memerlukan arus sinus untuk menghasilkan gerakan yang kontinyu, sedangkan motor stepper memerlukan gelombang berbentuk pulsa. Setiap pulsa akan menggerakan rotor kesuatu sudut tertentu, sehingga dapat berhenti pada posisi yang diinginkan atau bahkan berputar ke arah yang berlawanan. Motor stepper adalah perangkat elektromekanis yang bekerja dengan mengubah pulsa elektromekanis yang bekerja dengan mengubah pulsa elektronis menjadi gerakan mekanis diskrit. Motor stepper bergerak berdasarkan urutan pulsa yang diberikan kepada motor. Karena itu, untuk mengerakan motor stepper diperlukan pengendali motor stepper yang membangkitkan pulsa-pulsa periodik. Penggunaan motor stepper memiliki beberapa keunggulan dibandingkan dengan pengunaan motor dc biasanya keunggulan antara lain adalah : •
Sudut rotasi motor proporsional dengan pulsa masukan sehingga lebih mudah diatur.
•
Motor dapat langsung memberikan torsi pada saat mulai bergerak
•
Posisi dan pergerakan repetisinya dapat ditentukan secara presisi.
•
Memiliki respon yang sangat baik terhadap mulai, stop dan berbalik (purputaran)
•
Sangat realibel karena tidak adanya sikat yang bersentuhan dengan rotor seperti pada motor dc
•
Dapat menghasilkan perputaran yang lambat sehingga beban dapat dikopel langsung ke porosnya
16
•
Frekwensi perputaran dapat ditentukan secara bebas dan mudah pada range yang luas Seperti telah dijelaskan diatas bentuk dasar motor stepper yang paling
sederhana terdiri atas sebuah rotor, yang merupakan magnet permanen dan sebuah stator yang dililiti kumparan sehingga dapat membentuk magnet listrik. Jika kutub magnet stator dan rotor sama, kedua motor akan saling tolak menolak sehingga mengakibatkan rotor berputar. Arah putaran ini dua arah, tergantung dari faktor mekanik motor stepper itu sendiri. Besarnya perputaran adalah 1800 . Bentuk dasar seperti diperlihatkan pada Gambar 2.3 dari motor stepper terdiri atas: 1. Rotor yaitu bagian yang berputar dan terdiri dari magnet permanen dengan 2 kutub. 2. Stator yaitu bagian yang dililitkan kumparan sehingga membentuk medan magnet jika dialiri arus listrik.
17
Gambar 2.3. Ilustrasi Putaran Rotor terhadap Stator
2.6.1. Tipe Motor Stepper Berdasarkan Magnet Yang Digunakan Berdasarkan magnet yang digunakan, motor stepper dibedakan menjadi tiga macam yaitu tipe permanen magnet, variabel reluktansi dan motor stepper tipe hybrid (HB). Pada umumnya motor stepper saat ini yang digunakan adalah motor stepper yang mempunyai variabel relukatansi. Cara yang paling mudah untuk membedakan antara tipe motor stepper di atas adalah dengan cara memutar rotor dengan tangan ketika tidak dihubungkan ke sumber tegangan searah (power supplay). Pada motor stepper yang mempunyai permanen magnet maka ketika diputar dengan tangan akan terasa lebih tersendat karena adanya gaya yang ditimbulkan oleh permanen magnet. Tetapi ketika menggunakan motor dengan variabel reluktansi maka ketika diputar akan lebih halus karena sisa reluktansinya cukup kecil. Berikut adalah penjelasan tipe motor stepper :
18
1. Motor Stepper Tipe Variabel Reluctance (VR) Pada motor stepper yang mempunyai variabel reluktansi seperti yang diperlihatkan pada Gambar 2.4
terdapat 3 buah lilitan yang pada ujungnya
dijadikan satu pada sebuah pin common. Untuk dapat menggerakkan motor ini maka aktivasi tiap-tiap lilitan harus sesuai urutannya. Gambar 2.4 merupakan gambar struktur dari motor stepper dengan variabel reluktansi dimana tiap step-nya adalah 30°. Mempunyai 4 buah kutub pada rotor dan 6 buah kutub pada statornya yang terletak saling berseberangan.
Gambar 2.4. Variabel Reluktance Motor Jika lilitan 1 dilewati oleh arus, lilitan 2 mati dan lilitan 3 juga mati maka kumparan 1 akan menghasilkan gaya tolakkan kepada rotor, dan rotor akan berputar sejauh 30° searah jarum jam sehingga kutub rotor dengan label Y sejajar dengan kutub dengan label 2. Jika kondisi seperti ini berulang terus menerus secara berurutan, lilitan 2 dilewati arus kemudian lilitan 3 maka motor akan berputar secara terus menerus.
19
Maka agar dapat berputar sebanyak 21 step, motor stepper perlu diberikan data dengan urutan seperti pada Tabel 2.3. Tabel 2.3. Pemberian Pulsa (Data) Motor Stepper
Lilitan 1: 1 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 Lilitan 2: 0 1 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 Lilitan 3: 0 0 1 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 1 ‘1’ pada Tabel 2.3 diartikan bahwa lilitan yang bersangkutan dilewati arus sehingga menghasilkan gaya tolak untuk rotor. Sedangkan ‘0’ diartikan lilitan dalam kondisi off, tidak mendapatkan arus.
2. Motor Stepper tipe Magnet Permanen Motor stepper jenis ini memiliki rotor yang terdiri dari lapisan magnet permanen yang diselang-seling dengan kutub yang berlawanan (seperti terlihat pada Gambar 2.5) dengan adanya magnet permanen, maka intensitas fluks magnet dalam motor ini akan meningkat, sehingga dapat menghasilkan torsi yang lebih besar. Motor ini biasanya memiliki resolusi langkah (step) yang rendah, yaitu antara 7,5O hingga 15O per langkah. Berikut adalah gambar sederhana dari motor stepper tipe magnet permanen.
20
Gambar 2.5. Motor Stepper tipe Magnet Permanen 3. Motor Stepper tipe Hybrid Motor Stepper tipe hybrid memiliki struktur yang merupakan kombinasi dari kedua tipe motor stepper sebelumnya. Stepper motor tipe hybrid memiliki gigi-gigi seperti pada motor tipe Vr dan juga memiliki magnet permanent yang tersusun secara aksial pada batang porosnya seperti motor tipe PM. Motor tipe ini paling banyak digunakan dalam berbagai aplikasi karena kinerjanya lebih baik. Motor stepper tipe hybrid dapat menghasilkan resolusi langkah yang tinggi yaitu antara 3,6O hingga 0,9O per langkah atau 100 – 400 langkah setiap putarnya.
21
2.6.2. Tipe
Motor
Stepper
Berdasarkan
Perancangan
Rangkaian
Pengedali 1. Unipolar Motor Stepper Motor stepper dengan tipe unipolar adalah motor stepper yang mempunyai 2 buah lilitan yang masing-masing lilitan ditengah-tengahnya diberikan sebuah tap seperti tampak pada Gambar 2.6
Gambar 2.6. Unipolar Stepper Motor Motor stepper ini mempunyai step tiap 30O dan mempunyai dua buah liliatan yang didistribusikan berseberangan 180O diantara kutub pada stator. Sedangkan pada rotonya menggunakan magnet permanen yang berbentuk silinder dengan mempunyai 6 buah kutub, 3 kutub selatan dan 3 buah kutub utara. Sehingga dengan konstruksi seperti ini maka jika dibutuhkan kepresisian dari motor stepper yang lebih tinggi dibutuhkan pula kutub-kutub pada stator dan rotor yang semakin banyak pula. Pada Gambar 2.6 motor tersebut akan bergerak setiap step sebesar 30O dengan 4 bit urutan data (terdapat dua buah lilitan dengan tap, total lilitan menjadi 4 lilitan). Ketelitian dari magnet permanen di rotor dapat sampai 1.8O untuk tiap step-nya. Ketika arus mengalir melalui tap tengah pada lilitan pertama akan
22
menyebabkan kutub pada stator bagian atas menjadi kutub utara sedangkan kutub stator pada bagian bawah menjadi kutub selatan. Kondisi akan menyebabkan rotor mendapat gaya tarik menuju kutub-kutub ini, dan ketika arus yang melalui lilitan 1 dihentikan dan lilitan 2 diberi arus maka rotor akan bergerak lagi menuju kutubkutub ini. Sampai disini rotor sudah berputar sampai 30O atau 1 step. Tabel 2.4 menunjukan urutan data untuk motor stepper dengan tipe unipolar (torsi normal). Tabel 2.4. Urutan Data Motor Stepper Tipe Unipolar (Torsi Normal)
Lilitan 1a: Lilitan 1b: Lilitan 2a: Lilitan 2b:
1 0 0 0
0 0 1 0
0 1 0 0
0 0 0 1
1 0 0 0
0 0 1 0
0 1 0 0
0 0 0 1
1 0 0 0
0 0 1 0
0 1 0 0
0 0 0 1
1 0 0 0
0 0 1 0
0 1 0 0
0 0 0 1
1 0 0 0
0 0 1 0
0 1 0 0
0 0 0 1
1 0 0 0
0 0 1 0
0 1 0 0
0 0 0 1
1 0 0 0
0 1 0 1
1 0 0 1
1 0 1 0
Tabel 2.5. Urutan Data Motor Stepper Tipe Unipolar (Torsi Besar)
Lilitan 1a: Lilitan 1b: Lilitan 2a: Lilitan 2b:
1 0 1 0
0 1 1 0
0 1 0 1
1 0 0 1
1 0 1 0
0 1 1 0
0 1 0 1
1 0 0 1
1 0 1 0
0 1 1 0
0 1 0 1
1 0 0 1
1 0 1 0
0 1 1 0
0 1 0 1
1 0 0 1
1 0 1 0
0 1 1 0
0 1 0 1
1 0 0 1
1 0 1 0
0 1 1 0
Untuk meningkatkan torsi yang besar maka dapat digunakan urutan pemberian data seperti pada Tabel 2.5. Dimana terdapat dua buah lilitan yang di beri arus pada satu waktu. Dengan pemberian urutan data seperti ini akan menghasilkan torsi yang lebih besar. Dengan urutan data baik pada Tabel 2.4 atau Tabel 2.5 akan menyebabkan motor berputar sebanyak 24 step atau 4 putaran.
23
2. Bipolar Motor Stepper Motor dengan tipe bipolar ini mempunyai konstruksi yang hampir sama dengan motor stepper tipe unipolar namun tidak terdapat tap pada lilitannya, seperti tampak pada Gambar 2.7
Gambar 2.7. Bipolar Motor Stepper Penggunaan motor dengan tipe bipolar ini membutuhkan rangkaian yang sedikit lebih rumit untuk mengatur agar motor ini dapat berputar dalam dua arah. Biasanya untuk menggerakkan motor stepper jenis ini membutuhkan sebuah driver motor yang sering dikenal sebagai H Bridge. Rangkaian ini akan menontrol tiap-tiap lilitan secara independen termasuk dengan polaritasnya untuk tiap-tiap lilitan. Untuk mengontrol agar motor ini dapat berputar satu step maka perlu diberikan arus untuk tiap-tiap lilitan dengan polaritas tertentu pula. Urutan datanya dapat dilihat pada Tabel 2.6.
24
Tabel 2.6 Urutan Data Motor Stepper tipe Bipolar
2.7.
Transistor Transistor adalah komponen elektronik, yang paling umum adalah
transistor yang terdiri dari tiga lapisan semikonduktor. Ada dua jenis yaitu NPN dan PNP seperti yang diperlihatkan pada Gambar 2.8. Pada setiap transistor dan tiga terminal yang dihubungkan ke rangkaian, yaitu: Collector (C), Emiter (E), dan Base (B). C
N
C
B
B
P
E
N
E
a. Transistor Tipe NPN C
P
C
B
B
N
E
P E
b. Transistor Tipe PNP Gambar 2.8. Simbol dan Lapisan Semikonduktor Transistor
25
Tegangan yang diberikan pada transistor dapat berupa dc atau ac. Namun yang dibahas pada bab ini hanyalah tegangan dc yang disebut juga tegangan bias. Transistor dapat dipandang sebagai dua buah dioda yang berhadapan atau bertolak belakang seperti yang diperlihatkan pada Gambar 2.9. C C N
C
B
B
P
B E
N E
E
a. Transistor Tipe NPN C C P
C
B
B
N
B E
P E
E
b. Transistor Tipe PNP Gambar 2.9. a. Transistor dengan dioda yang saling berhadapan b. Transistor dengan dioda yang saling bertolak belakang Dengan pandangan ini, didefinisikan 3 daerah kerja transistor berdasarkan tegangan bias yang diberikan pada terminalnya.
26
1. Daerah Aktif Ini adalah daerah yang dipakai jika transistor berfungsi sebagai penguat (amplifier). Sering juga disebut daerah operasi normal. Disini dioda collector reverse bias sedangkan dioda Emiter forward bias. 2. Daerah Cutoff Pada daerah ini transistor dapat dianalogikan sebagai switch terbuka atau “off”. Karena arus yang mengalir kecil. Dioda collector maupun Emiter reverse bias. 3. Daerah Saturasi / Jenuh Pada daerah ini transistor dapat dianalogi kan sebagai switch tertutup atau “on”. Karena arus collector mengalir maksimum. Dioda collector maupun Emiter forward bias. Setelah mengetahui secara garis besar tentang daerah kerja transistor, berikut adalah grafik karakteristrik transistor dan letak daerah-daerah tersebut yang diperlihatkan pada Gambar 2.10.
27
Gambar 2.10. Garfik Karakteristik Transistor Grafik IC terhadap VCE adalah grafik karakteristik transistor yang paling sering digunakan. Grafik ini menyatakan karakteristik transistor menurut pabriknya (data sheet). Untuk menganalisa kerja trasistor, selain garfik karakteristik yang diperlihatkan pada Gambar 2.10 diatas juga dipakai grafik garis beban transistor, yang diperoleh dari rangkaian luar yang tersambung ke transistor. Setiap rangkaian mempunyai garis bebannya sendiri yang dapat dicari seperti pada analisa dibawah ini.
28
680 Ohm
C
18Volt
B
LOOP 1
470 Ohm
E 5Volt
Gambar 2.11. Transistor Dengan Rangkaian Luar
Dari Gambar 2.11 diatas perhatikan loop I : − 18V + I C .680Ω + VCE = 0 VCE = 18V − I C .680Ω ....................................1
IC =
18V − VCE .............................................2 680Ω
Persamaan 1 dapat dianggap sebagai persamaan suatu garis dengan variabel VCE dan IC, dan persamaan 2 dapat dianalogikan dengan y = ax + b yaitu persamaan garis biasa. Untuk menggambarkan garis beban tersebut terlebih dahulu menghitung kedua titik dari persamaan garis diatas. 1. Perpotongan garis dengan sumbu VCE atau titik cut off : IC = 0 Sehingg mendapatkan VCE = 18 V.
29
2. Perpotongan garis dengan sumbu IC atau titik saturasi: VCE
= 0V.
Sehingga mendapatkan IC = 26.4 mA. Grafik diperoleh seperti Gambar 2.12 Garis beban ini menyatakan segala kemungkinan harga IC dan VCE untuk rangkaian yang bersangkutan. Grafik garis beban adalah grafik IC vs VCE seperti juga grafik daerah kerja transistor. Karena itu, kedua grafik dapat dijadikan satu seperti yang diperlihatkan pada Gambar 2.12.
Gambar 2.12. Perpaduan Grafik Karakteristik Dan Garis Beban.
Pada rangkaian pengendali peralatan listrik ini transistor difungsikan sebagai switch atau saklar. Transistor sebagai saklar bekerja secara bergantian di daerah saturasi dan cut off. Dalam hal ini, yang merupakan “switch” adalah terminal collector- emiter (konfigurasi common emiter) dengan arus IC (≈ IE) yang melaluinya. Sedangkan arus IB merupakan “pengontrol switch” yang menentukan apakah switch tersebut tertutup atau terbuka. Keadaan switch tertutup adalah saat
30
transistor bekerja didaerah saturasi dan keadaan switch terbuka adalah saat transistor bekerja didaerah cutoff. Dalam rangkaian transistor sebagai switch diatur agar transistor memasuki daerah cutoff dan saturasi sesuai dengan keadaan switch yang dikehendaki, daerah aktif tidak dipakai (dilewati saja pada saat perpindahan antara switch terbuka dan tertutup yaitu antara cutoff dan saturasi). Sifat-sifat daerah kerja transistor sebagai switch: 1)
Sifat-sifat daerah saturasi (switch) • VCE ≈ 0 atau short sehingga seperti switch tertutup (lihat Gambar 2.12). • IC = IC(max) , yaitu arus yang melalui “switch” CE. • IB ≥ IB(sat) , yaitu arus “pengontrol” switch yang menentukan bahwa transistor memasuki daerah saturasi. C
C
I C = Max B
≡
I Bsat VCE ≈ 0 B
E
I E ≈ IC E
Gambar 2.13. Transistor sebagai switch tertutup
2)
Sifat-sifat daerah cutoff • VCE = max atau open (terbuka) sehingga seperti terbuka. (lihat Gambar 2.15) • IC = IE ≈ 0, yaitu arus yang melewati switch tidak ada.
31
• IB ≈ 0, yaitu arus “pengontrol” switch yang menentukan bahwa transistor memasuki daerah cutoff. C
B
C IC = 0
≡
IB = 0 B
IE = 0 E
E
Gambar 2.14. Transistor sebagai switch terbuka
2.8.
Dioda
Dioda memiliki dua buah elektroda, yaitu Anoda dan Katoda. Anoda adalah elektroda yang positip, sedang Katoda elektroda yang negatip. Jika Anoda dihubungkan dengan positip batrai, sedangkan Katoda dihubungkan dengan negatip batrai, arus listrik akan mengalir dengan mudah dari Anoda ke Katoda. Dalam seperti ini dikatakan juga dioda mendapatkan tegangan panjar maju (Forward bias). Sebaliknya Katoda dihubungkan dengan positip batrai, sedangkan Anoda dihubungkan dengan negati batrai., arus listrik tidak dapat mengalir (sedikit sekali mengalir) dari Katoda ke Anoda. Dalam keadaan ini dioda mendapat panjar mundur (Reverse bias). Dari kejadiaan itu dapat diambil kesimpulan bahwa arus listrik pada dioda hanya dapat mengalir dari Anoda ke Katoda, tidak dapat mrngalir ke arah sebaliknya.
32
Anoda
Katoda
(a) Simbol Dioda
b) Simbol Dioda Cahaya (LED)
Gambar 2.15. Simbol – simbol Dioda
Dioda ini dibuat dari bahan semi konduktor yang saling dipertemukan, bahan semikonduktor tersebut yang sering digunakan untuk pembuatan dioda diantaranya germanium, silikon dan selenium. Jenis- jenis dioda dan kegunaannya : •
Diode germanium, digunakan untuk penditeksi sinyal dan sering digunakan pada pesawat radio penerima.
2.9.
•
Dioda silikon dan silenium, digunakan sebagai penyearah.
•
Diode Zener, digunakan untuk pensetabil tegangan.
•
Dioda cahaya, digunakan untuk peraga.
Kapasitor
Kapasitor banyak digunakan dalam rangkaian elektronika dan mempunyai berbagai macam fungsi. Pada dasarnya kapasitor merupakan alat menyimpan muatan listrik yang dibentuk dari dua permukaan (piringan) yang berhubungan. Tetapi dipisahkan oleh suatu peyekat. Bila electron berpisah dari satu plat ke plat yang lain, akan terdapat muatan diantara mereka pada medium penyekat tadi.
33
Muatan (bersimbol Q) diukur dengan satuan coulomb dan kapasitor yang memperoleh muatan listrik akan mempunyai tegangan antara terminal sebesar V volt. Kemampuan kapasitor dalam menyimpan muatan disebut kapasitansi yang dapat diukur berdasarkan muatan yang dapat disimpan pada suatu kenaikan tegangan. Kapasitansi, C =
Muatan, Q Tegangan, V
C = Q/V farad (F)
Berikut gambar symbol kapasitor nonelektrolit dan variabel kapasitor :
Gambar 2.16. (a) Simbol kapasitas nonelektrolit (b) variabel kapasitas
Gambar 2.17. Simbol kapasitas elektrolit
34
2.10. Rangkaian Penyearah
Rangkaian penyearah merupakan rangkaian yang mengkonversikan sinyal AC menjadi sinyal DC. Komponen terpenting dari rangkaian penyearah adalah dioda. Dioda berfungsi sebagai penyearah daya masukan AC menjadi daya keluaran DC. Penyearahan dengan menggunakan dioda mempunyai banyak keuntungan yaitu murah dan sederhana. •
Penyearah setengah gelombang
Gambar 2.18 Penyearah setengah gelombang
Rangkaian penyearah setengah gelombang hanya menggunakan satu buah dioda saja. Rangkaian ini hanya menghasilkan satu bentuk fasa positif atau fasa negatif saja. Gambar 2.18 memperlihatkan contoh rangkaian penyearah setengah gelombang dengan penyearahan positif. •
Penyearah Gelombang Penuh Penyearahan gelombang penuh dapat diperoleh dengan dua cara. Cara
yang pertama memerlukan transformator jenis center tap (CT) dan dua buah dioda sebagai penyearah. Gambar 2.19 memperlihatkan penyearah gelombang penuh dengan cara ini.
35
Gambar 2.19 Penyearah gelombang penuh dengan transformator center tap
Sensor Infra Merah Dioda Infra Merah
LED (Light Emitting Diode) merupaka dioda yang memancarkan cahaya apabila diberi tegangan forward bias. Ketika LED diberi tegangan forward bias, electron pada bagian N pada dioda berpasangan dengan hole dari bagian P. Sewaktu proses penyatuan tersebut terjadi pemancaran energi dalam bentuk panas dan cahaya. Pada dioda silicon dan germanium, sebagian besar energi yang timbul dalam bentuk panas. Untuk bahan dioda yang lain seperti galium arsen phospida (GaAsP) atau galium Phospida(GaP), energi yang dipancarkan dalam bentuk energi photon atau cahaya. Bahan ini biasanya adalah yang digunakan untuk LED.
Photo Dioda
Photo dioda adalah salah satu foto detector, yaitu sebuah alat opto elektronika yang mengubah cahaya yang datang menjadi besaran listrik. Fungsi photo dioda adalah mengubah sejumlah kecil dari enegi cahaya yang diterima (photon0 kedalam sebuah signal elektris yang efisien.
36
BAB III PERANCANGAN SISTEM
3.1.
Diagram Blok Perancangan Sistem Keras Keseluruhan perangkat keras untuk Rancang Bangun Sistem Pensortiran
Barang Berdasarkan Tinggi Rendah Benda Berbasis PC (Personal Computer) diperlihatkan pada blok diagram Gambar 3.1 dibawah ini.
RANGKAIAN SENSOR INFRA RED
TRANCEIVER 74LS245
MULTIPLEXER 74LS157
CPU
PARALLEL PORT PRINTER
DRIVER MOTOR STEPPER
MOTOR STEPPER
Gambar 3.1 Blok Diagram Perancangan Sistem Pembuatan suatu perangkat memerlukan suatu perancangan terlebih dahulu agar dapat memenuhi karakteristik kerja yang di kehendaki. Perangkat yang dibuat harus mengunakan komponen seminimal mungkin dengan tidak mengurangi fungsi dari alat tersebut. Perangkat yang dibuat terdiri dari dua bagian yaitu perangkat keras dan perangkat lunak, Perangkat keras pada Rancang bangun sistem pensortiran barang berdasarkan tinggi rendah benda berbasis PC ( Perconal Computer) terdiri dari antarmuka Pararel Port Printer, Fungsi dari pararel port printer disini sebagai
37
konektivitas antara komputer dengan keseluruhan rangkaian pada sistem. Dan Pin konektor pararel port disini mengunakan 25 Pin yang disebut dengan DB-25. Sedangkan perangkat lunak yang digunakan adalah Borland Delphi 5.0. Perangkat lunak ini dirancang untuk mendeteksi data input dari sensor infraRed, mengontrol gerakan pada rancang bangun sistem pensortiran barang berdasarkan tinggi rendah benda berbasis PC untuk mengambil dan meletakkan benda menurut jenis ukuran. Jadi secara keseluruhan sinyal yang dikirim melalui Keyboard kemudian diproses melalui perangkat lunak Borland Delphi untuk selanjutnya dikirim ke DB-25 Pararel Port Printer. Perangkat lunak ini dirancang untuk mengendalikan satu buah motor stepper, yang di gunakan untuk mengambil dan meletakkan posisi benda. Serta mengendali sensor untuk mengetahui apakah terdapat hambatan yang menghalangi jalannya perangkat ini. Data dari tranceiver akan dikirim ke multiplexer 74LS157 secara bergantian tergantung dari tranceiver mana yang datanya akan dilewatkan terlebih dahulu dengan pedoman Enable Tranceiver berlogic “1”. Data dari bus input selanjutnya akan dibaca oleh aplikasi (software) menggunakan 4 bit status dari pararel port printer secara bergantian, sehingga dapat mengaktifkan semua driver pada alat Si Rancang bangun sistem pensortiran barang berdasarkan tinggi rendah benda berbasis PC ( Perconal Computer).
38
3.2.
Rangkaian Antar Muka Rangkaian antar muka yang dipakai adalah Pararel Port . Pararel Port
disini berfungsi sebagai konektivitas antar komputer dengan keseluruhan rangkaian pada sistem. Pararel port dibagi menjadi 2 bagian yaitu pararel port 36 pin dan pararel port 25 pin atau disebut juga DB-25 dan yang digunakan disini pada rancang bangun sistem pensortiran barang berdasarkan tinggi rendah benda berbasis PC (personal Computer) adalah DB-25.
3.2.1. Diagram Pin Pararel Port printer Ada dua macam konektor pararel port yaitu 36 pin dan 25 pin. Konektor 36 pin dikenal dengan nama centronics dan konektor 25 pin dikenal dengan nama DB-25. Pada tugas akhir ini sebagai sarana konektivitas antara perangkat hardware dengan komputer memakai jenis konektor DB-25. dari 25 pin yang terdapat pada DB-25 hanya 17 pin yang digunakan untuk saluran pembawa data, sedangkan 8 pin yang lainnya berfungsi sebagai ground. Ketujuh belas saluran data tersebut terdiri dari tiga bagian yakni data 8 bit, status 5 bit, dan control 4 bit. Bit control dan bit status berfungsi dalam jabat tangan proses penulisan data ke pararel port.
39
Tabel 3.1. Fungsi Pin konektor DB-25 dan Centronics DB-25
Centronics
In/Out
Nama Sinyal
Register Bit
1
1
Out
nStrobe
C0
2
2
Out
Data 0
D0
3
3
Out
Data 1
D1
4
4
Out
Data 2
D2
5
5
Out
Data 3
D3
6
6
Out
Data 4
D4
7
7
Out
Data 5
D5
8
8
Out
Data 6
D6
9
9
Out
Data 7
D7
10
10
In
nAck
S6+
11
11
In
Busy
S7-
12
12
In
PaperEnd
S5+
13
13
In
Select
S4+
14
14
Out
nAutoFeed
C1-
15
32
In
nError
S3+
16
31
Out
nInit
C2+
17
36
Out
nSclectIn
C3-
18 - 25
19 - 30
Ground
40
Gambar 3.2. Diagram Pin DB – 25
3.2.2. Sinyal Pararel Port printer Gambar dari sinyal – sinyal pada pararel port printer (Standard) adalah sebagai berikut :
Tabel 3.2. Gambar Sinyal Pararel Port Nama Sinyal
Gambar Sinyal SPP
nStrobe
Set pulsa rendah 0.5µ detik untuk menyatakan data di D7:D0 adalah Valid Least SignificantBit (LBS)
Data 0
Data Bit 1
Data 1
Data Bit 2
Data 2
Data Bit 3
Data 3
Data Bit 4
Data 4
Data Bit 5
Data 5
Data Bit 6
Data 6 Data 7 nAck Busy PaperEnd
Most Significant bit (MSB) Pulsa rendah sampai dengan 5µ detik menunjukkan data sudah diterima; IRQ Bernilai tinggi jika printer sibuk/offline Bernilai tinggi jika printer kehabisan kertas
41
Bernilai tinggi jika printer On-line
Select nAutoFeed nError nInit nSclectIn
Jika diset rendah printer akan pindah baris setiap menemui karakter carriage return Bernilai rendah jika printer error Pulsa rendah sampai dengan 50µ detik untuk inisialisasi atau mereset printer Bernilai tinggi jika printer dipilih (oleh computer)
Ground
3.3.
Ground
Perancangan Perangkat Keras Rancang sistem secara keseluruhan adalah merupakan penggabungan dari
bagian – bagian yang berhubungan satu dengan yang lainnya. Dimana dalam bab ini akan dibahas bagian perbagian dari sistem yang dirancang. Alat pengantar ini penulis rancang dengan menggunakan komponen yang mudah didapat dipasaran dan harganya yang terjangkau. Komponen utama pada pengontrolan ini adalah:
3.3.1. Rangkaian Transceiver Agar data dari LPT (Port Printer pararel) dapat melanjutkan dari rangkaian catu daya, rangkaian motor steeper dan sensor infra Red. Maka disini digunakan IC dengan tipe IC74LS245 yang bersifat sebagai octal 3 state transceiver atau 3 state bidirectional.
Keadaan atau bentuk dari IC74LS245
seperti pada gambar 3.3 dibawah ini
42
Gambar 3.3. Rangkaian Tranceiver Keadaan tingkat logika yang memberi pengaruh operasional dari IC74LS245 ditentukan pada masukan tingkat logika yang masuk pada pin 1 (DIR) dan pin 19 (GND) yang dimiliki oleh IC tersebut. Seperti terlihat pada tabel 3.1 dimana keadaan “low” pada pin 1 operasi yang dilakukan adalah dari B menuju A. sebaliknya jika kaeadaan “high” pada pin Dir dan “low” pada pin GND maka operasi yang dilakukan adalah dari A menuju B. Dan jika pada pin Dir “don’t care (x) dan pin GND “high” maka pengoperasiannya terhenti (isolation).
43
Tabel 3.3. Metode Operasi IC 74LS245 Control Input
Operation
GND
DIR
L
L
B
A
L
H
A
B
H
X
Isolation
Keterangan H = Hight L = Low X = Don’t care
3.3.2. Rangkaian Multiplexer
Gambar 3.4. Multiplexer dan data antara DB-25 dengan IC74LS157
44
Rangakaian multiplexer yang ditunjukkan pada gambar 3.4 bekerja dengan empat buah switch . jika input A/B (yang dihubungkan ke strobe) diberi nilai rendah maka input 1A disalurkan ke 1Y, input 2A ke 2Y dan seterusnya. Jika A/B bernilai tinggi maka dipindahkan ke Y adalah input B : 1B ke 1Y, 2B ke 2Y, dan seterusnya. Output 1Y sampai dengan 4Y dihubungkan ke pararel port via register status.
3.3.3
Rangkaian Catu Daya
Gambar 3.5 rangkaian Catu daya 5 Volt dan 18 Volt dengan IC regulator LM7805 dan LM 7818
45
Rangkaian catu daya yang digunakan terdiri dari trafo yang terhubung ke tegangan jala-jala 220 V AC yang berfungsi untuk mengubah besar tegangan. Kemudian penyearah dan kapasitor sebelum masuk ke IC regulator tegangan. Regulator yang digunakan pada perancangan alat ini adalah regulator yang mampu menghasilkan tegangan keluaran 5 volt dan 18 volt DC. Untuk keperluan tersebut dapat digunakan regulator 7805 yang akan menghasilkan keluaran 5 volt dan 7818 untuk keluaran 18 volt. Masukan dari rangkaian ini berasal dari trafo 3 A, dua buah dioda IN 5400 digunakan sebagai penyearah, dua buah kapasitor 3300µF/25 Volt dan dua buah kapasitor 2200µF/16 Volt digunakan sebagai penyaring (filter) serta penghalus ripple tegangan keluaran dari dioda. Resistor 470 Ohm digunakan sebagai pembatas arus agar arus yang mengalir pada indikator LED tidak terlalu besar.
3.3.4
Rangkaian Sensor Infra Merah
1. Dioda Infra Merah Rangkaian ini berfungsi untuk mendeteksi benda yang lewat dimana pada bagian pemancar dipergunakan sebuah dioda infra merah. Dioda infra merah akan memancarkan cahaya dengan panjang gelombang tertentu jika diberi forward bias. Cahaya dari dioda infra merah tidak dapat terlihat oleh mata. Gambar 3.6 dibawah ini menunjukkan struktur dan simbol dari dioda infra merah.
46
Gambar 3.6. Simbol LED dioda infra merah Terjadinya pemancaran cahaya infra merah pada dioda ini adalah pada saat junction mendapat forward bias, dimana pada saat itu elektro dari bagian N pada dioda akan berpasangan pada hole dari bagian P. sewaktu pemerosesan penyatuan itu akan terjadi pemancaran energi dalam bentuk foton. Foton yang dipancarkan akan diserap oleh bahan pembungkus dari semi konduktor tersebut atau meninggalkan permukaan dari dioda dan menimbulkan radiasi dimana besar fluks yang timbul sebanding dengan forward bias.
2. Photo Dioda Photo dioda adalah salah satu foto detector, yaitu sebuah alat opto elekronika yang mengubah cahaya yang dating menjadi besaran listrik. Fungsi photo dioda adalah mengubah sejumlah kecil dari energi cahaya yang diterima (photon) ke dalam sebuah signal elektris yang efesien. Komponenini sangat peka terhadap cahaya. Caha yang mengenai sambungan p-n akan menaikkan arus balik dalam dioda.
3.7. Foto Dioda
47
3.3.5. Motor Stepper Sebelum melakukan pemasangan kabel data motor stepper, terlebih dahulu menentukan urutan kabel yang digunakan sebagai common dan kabel untuk mengatur putaran motor, untuk menentukan phasa 1 sampai phasa 4, penulis melakukan metode sebagai berikut: 1. Menentukan kabel common supply dengan mengunakan multitester digital. Kabel common supply ini satu – satunya kabel yang mempunyai resistansi setengahnya dari kabel lainnya. 2. Setelah mengetahui kabel common supply, langkah selanjutnya adalah menetukan kabel menurut phasa-nya. Untuk melakukan hal tersebut penulis melakukan metode sebagai berikut : a. Pilih salah satu kabel dan ditanahkan. Asumsikan bahwa kabel
tersebut
tersambung pada koil ke 4;
b. Tanahkan kembali satu buah kabel dan apabila motor sedikit bergerak searah dengan jarum jam, maka kabel tersebut dapat dipastikan tersambung pada koil ke 3;
48
c. Apabila ketika melakukan langkah b motor sedikit bergerak berlawanan dengan arah jarum jam maka dapat dipastikan bahwa kabel tersebut tersambung pada koil ke 1;
d. Apabila ketika melakukan langkah b motor tidak bergerak, maka dapat dipastikan bahwa kabel tersebut tersambung pada koil ke2 ;
49
3.3.6.
Rangkaian Pengendali Motor Stepper Sinyal keluaran dari Pararel Port tidak dapat langsung menggerakkan
motor stepper dengan beban yang cukup besar, karena arusnya sangat kecil. Untuk itu diperlukan rangkaian pengendali motor stepper. Untuk menggerakkan motor stepper, dalam rangkaian ini digunakan komponen seperti resistor, dioda 1N4001, dan transistor tipe BC 547. Namun dalam rangkaian ini yang berperan penting adalah transistor karena fungsinya sebagai switch (saklar), dan dioda berfungsi sebagai sekring (pengaman). Pada saat logika 1 (sinyal keluaran dari Pararel Port) diumpankan ke transistor, transistor T1 akan men-switch dan arus akan mengalir melewati kumparan pada motor stepper. Dioda D1 yang diperlihatkan pada Gambar 3.8 adalah dioda pengaman yang disisipkan untuk mencegah timbulnya tegangan lebih pada transistor yang mungkin muncul pada kolektor (titik B). Hal ini disebabkan oleh gaya gerak listrik balik yang dibangkitkan oleh kumparan motor stepper
pada saat transistor dalam keadaan mati (off). Tegangan lebih ini
seringkali melebihi tegangan maksimum rata-rata kolektor, sehingga dapat merusak transistor.
50
+ VCC = 18V
A
Motor
D1
Stepper B
T1
Gambar 3.8. Cara Kerja Diode Proteksi (Pengaman) Dioda yang mempunyai kemampuan balik akan menghantar tegangan (on) jika tegangan pada kolektor melebihi tegangan catu VCC 18V. Bila hal ini terjadi maka arus diode akan menghilangkan gaya gerak listrik. Gambar 3.9 merupakan rangkaian pengendali motor stepper yang memiliki prinsip yang sama dengan Gambar 3.8, dioda 1N4001 berfungsi sebagai pelindung transistor BC 547 dan tegangan induksi yang mungkin timbul dari lilitan motor stepper. Keluaran dari Pararel port dihubungkan kemasukkan transistor BC 547 tersebut melalui resistor 470 Ω. Jika masukan bernilai sinyal rendah, maka transistor akan berada pada keadaan cut-off sehingga arus dalam lilitan motor stepper tidak mengalir. Jika masukan bernilai tinggi, maka transistor akan on
sehingga tegangan antara kolektor dengan emitor (VCE) turun dan arus dapat mengalir ketanah (ground).
51
1N4001
470 0hm
DIODE
BC547 NPN
RES1
1N4001
470 Ohm
DIODE
BC547 NPN
RES2
1N4001
470 Ohm
DIODE
BC547 NPN
RES3
Motor Stepper 1N4001
470 Ohm
DIODE
BC547 NPN
RES4
680 Ohm RES5 VCC 18 V
Gambar 3.9 Rangkaian Pengendali Motor Stepper Jika lilitan 1 dilewati oleh arus, lilitan 2 mati, lilitan 3 mati dan lilitan 4 juga mati, maka kumparan 1 akan menghasilkan gaya tarik kepada rotor, dan rotor akan berputar searah jarum jam. Jika kondisi seperti ini berulang terus menerus secara berurutan, lilitan 2 dilewati arus kemudian lilitan 3 dan lilitan 4 maka motor akan berputar secara terus menerus.
3.4
Perancangan Perangkat Lunak Untuk perancangan perangkat lunak digunakan Borland Delphi 7.0. Program
ini dipilih karena mudah dan mendukung terhadap akses port serta tampilannya yang berbasis GUI (Graphically User Interface). Program antarmuka ini terdiri
52
dari satu form. Pada Gambar 3.10 terlihat tampilan form pada layar PC ketika program dijalankan.
Gambar 3.10. Tampilan Form Program Bentuk tampilan dibuat sedemikian rupa sehingga memudahkan dalam pengoperasiannya. Listing program selengkapnya dapat dilihat pada lampiran.
53
Diagram Alir:
Gambar 3.11. Diagram Alir program
54
Berdasarkan diagram alir (flowchart) diatas maka logaritma pemrograman dari perangkat lunak antarmuka dapat dijelaskan sebagai berikut : 1. Seting alamat Pararel Port 378 H, kecepatan motor stepper (50000) ms nilai inisialisasi ini adalah (378 H sebagai Out, 379 sebagai In, 379 sebagai Out) Apabila dalam penyetingan alamat tidak sesuai maka program akan memperingatkan dan menampilkan pesan kesalahan. Bila semua setingan telah sesuai maka program akan menuju kelangkah berikutnya. 2. Bila tombol start pada layar PC ditekan maka rangkaian sensor aktif, Pararel Port siap menerima data dari keluaran sensor InfaRed.
3. Bila InfraRed 1 = aktif, maka sensor InfaRed 1 akan mendeteksi apakah terdapat benda dan selanjutnya pararel port printer akan mengendalikan motor stepper untuk menjalankan konveyor 1. 4. Bila InfaRed 2 atau InfaRed 2 dan 3 aktif maka secara otomatis benda akan dideteksi menurut golongan tinggi atau rendah, setelah itu konveyor akan mengatur posisi pengepakan benda sesuai dengan golongan tinggi atau rendah. 5. Setelah pengaturan posisi benda tinggi atau rendah sampai berjumlah 12 buah maka pararel port printer akan meriset data ulang dari awal lagi.
55
BAB IV PENGUJIAN DAN ANALISA SISTEM
4.1.
Pengujian dan analisa sistem Proses pengujian alat dilakukan untuk mengetahui kinerja masing –
masing bagian maupun secara keseluruhan dari alat Rancang Bangun Sistem Pensortiran Barang Berdasarkan Tinggi Rendah Benda Berbasis PC (Personal Computer) yang telah dibuat. Peralatan yang digunakan dalam pengujian adalah multimeter digital yang akan digunakan untuk mengukur tegangan keluaran dari masing – masing bagian alat. Proses pengukuran meliputi: 1. Pengukuran dan pengujian tegangan Catu Daya 18 Volt dan 5 volt. 2. Rangkaian Tranceiver 3. Rangkaian stepper motor.
4.2.
Pengukuran dan pengujian tegangan Catu daya Pengukuran ini dilakukan untuk mengetahui berapa besar tegangan
keluaran yang di dapat dengan mengunakan IC regulator LM7805 dan IC LM7818.
56
4.2.1. Pengukuran tegangan Catu Daya regulator LM7805 Pada rangkaian catu daya 5 volt DC yang digunakan pada alat ini adalah untuk sensor InfaRed. Rangkaian catu daya ini telah diregulasi oleh sebuah IC regulator umum tipe 78xx yang biasa digunakan. Pengukuran dilakukan tiga kali untuk melihat kesetabilan tegangan output dari regulator. Dengan menggunakan sebuah multimeter digital dapat dilihat kesetabilan tegangan dari output regulator tersebut. Seperti yang telihat pada tabel 4.1 berikut : Tabel 4.1. Pengukuran Regulator 5 Volt
No. Vout yang dinginkan (Volt) 1 5 2 5 3 5
Vout pengukuran (Volt) 5,08 5,07 5,07
Kesalahan (%) 1,60% 1,40% 1,40%
Persentase kesalahan didapat melalui perhitungan dengan membandingkan besar tegangan output hasil pengukuran dengan tegangan output yang diinginkan yaitu sebesar 5 Volt.
% Kesalahan(1) =
=
% Kesalahan(2) =
=
Vout pengukuran − Vout yangdiinginkan × 100% Vout yangdiinginkan
5.08V − 5V × 100% = 1.60% 5V Vout pengukuran − Vout yangdiinginkan × 100% Vout yangdiinginkan
5.07V − 5V × 100% = 1.40% 5V
57
Vout pengukuran − Vout yangdiinginkan × 100% Vout yangdiinginkan
% Kesalahan(3) =
=
5.07V − 5V × 100% = 1.40% 5V
4.2.2. Pengukuran tegangan Catu Daya regulator LM7818
Pada Rangkaian Catu daya 18 volt DC ini, digunakan untuk rangkaian penggerak motor stepper. sama seperti dengan catu 5 volt DC, Rangkaian catu daya ini telah diregulasi oleh sebuah IC regulator umum tipe 78xx yang biasa digunakan. Pengukuran dilakukan tiga kali pengukuran untuk melihat kesetabilan tegangan output dari regulator. Dengan menggunakan sebuah multimeter digital dapat dilihat kesetabilan tegangan dari output regulator tersebut. Seperti yang telihat pada tabel 4.2 berikut :
Tabel 4.2. Pengukuran Regulator 18 Volt
No. Vout yang diinginkan (Volt) 1 18 2 18 3 18 % Kesalahan (1) =
=
Vout pengukuran(Volt) 18,03 18,03 17,9
Kesalahan (%) 0,16% 0,16% 0,55%
Vout pengukuran − Vout yangdiinginkan × 100% Vout yangdiinginkan
18.03V − 18V × 100% = 0.16% 18V
58
% Kesalahan(2) =
=
% Kesalahan(3) =
=
Vout pengukuran − Vout yangdiinginkan × 100% Vout yangdiinginkan
18.03V − 18V × 100% = 0.16% 18V Vout pengukuran − Vout yangdiinginkan × 100% Vout yangdiinginkan
17.9V − 18V × 100% = 0.55% 18V
Dari data hasil pengukuran yang dilakukan diperoleh tegangan output yang cukup stabil, walaupun tegangan output terkadang melebihi dan terkadang dibawah tegangan output yang diinginkan. Analisa secara arus beban maksimum. Bila ingin mempertahankan Vout = 5 Volt arus beban maksimum yang dapat ditarik adalah: (anggap IC regurator tegangan masih bekerja dengan baik) Agar V1(min) ≥ 7.3 (data sheet Vi(min) dari 7805), maka Vr ( P − P ) maksimal yang diperbolehkan adalah: Vr ( P − P ) ≤ Vm − Vi (min) = 12V − 7.3V = 4.7V
Vr ( P − P ) =
I dc harus ≤ 4.7V 2 fC
59
jadi
I dc ≤ (4.7V )2 fC
(
= (4.7V )(2 )(50 ) 3300 × 10 −6
)
= 1.5 A
Arus beban yang lebih besar dari 1.5 A akan menyebabkan V1 turun dibawah Vi(min) dari Ic regurator tegangan 7805 sehingga Vout akan jatuh dibawah 5V. Dan sebaliknya bila arus beban lebih kecil dari 1.5 A akan menyebabkan V1 naik diatas Vi(min) dari Ic regurator tegangan 7805 sehingga Vout akan naik diatas 5V.
4.3.
Pengujian Tranceiver Pengujian tranceiver dilakukan dengan mengukur tegangan keluaran pada
saat terisolasi yaitu pada saat data tertahan dan data keluaran yang dikontrol dengan port. Cara mengetahui tranceiver tersebut bekerja atau tidak adalah dengan menambahkan LED pada output transeiver.
•
Pengukuran tegangan keluaran pada saat terisolasi
•
Pengukuran tegangan keluaran pada saat tidak terisolasi : 3,12 Volt
60
: 0,18 Volt
Gambar 4.1. Rangkaian Bus Tranceiver dengan mengunakan 8 buah LED
4.3.
Pengujian driver Stepper motor
Stepper motor yang digunakan pada Rancang Bangun Sistem Pensortiran Barang Berdasarkan Tinggi Rendah Benda Berbasis PC (Personal Computer) adalah motor stepper Variabel Reluctance . Motor stepper ini membutuhkan catu daya sebesar 18 volt DC dengan arus sebesar 0,24 Amper. Motor stepper 127K91631 STH-55D107 adalah motor stepper unipolar dengan 5 terminal kabel (4 kabel data dan 1 kabel common) dan mempunyai step tiap 1,80. Program untuk menguji motor stepper adalah sebagai berikut: Procedure procedure TForm1.Button1Click(Sender: TObject); var I,c:integer; label ulang,selesai; begin ulang:
61
for I:=1 to strtoint(edit2.Text) do asm mov dx,378h mov ax,1 out dx,ax end; for I:=1 to strtoint(edit2.Text) do asm mov dx,378h mov ax,2 out dx,ax end; for I:=1 to strtoint(edit2.Text) do asm mov dx,378h mov ax,4 out dx,ax end; for I:=1 to strtoint(edit2.Text) do asm mov dx,378h mov ax,8 out dx,ax end; c:=strtoint(edit1.Text); c:=c+1; edit1.Text:=IntToStr(c); if c<strtoint(edit3.Text) then goto ulang; selesai: end;
Ketiga program di jalankan dapat diukur tegangan pada driver stepper motor sebagai berikut:
Tabel 4.3. Data Pengujian Bit 0 driver stepper motor Bit
Logic
Clock Wise
0
1
Tegangan Basis (V) 3,6
Tegangan kolektor (V) 18
1
0
0,2
0
2
0
0,1
0
3
0
0,3
0
62
Tabel 4.4. Data Pengujian Bit 1 driver stepper motor Bit 0 1 2 3
Logic 0 1 0 0
Clock Wise Tegangan Basis (V) 0,3 3,4 0,1 0,1
Tegangan kolektor (V) 0 17,9 0 0
Tabel 4.5. Data Pengujian Bit 2 driver stepper motor Bit
Logic
0 1 2 3
0 0 1 0
Clock Wise Tegangan Basis (V) 0,2 0,2 3,5 0,3
Tegangan kolektor (V) 0 0 17,9 0
Tabel 4.6. Data Pengujian Bit 3 driver stepper motor Bit
Logic
0 1 2 3
0 0 0 1
Clock Wise Tegangan Basis (V) 0,1 0,2 0,1 3,7
Tegangan kolektor (V) 0 0 0 17,9
Dari data hasil pengukuran tegangan pada driver motor stepper, dapat menyebabkan motor berputar searah dengan jarum jam, dan driver stepper motor bekerja dengan baik.
63
4.4.
Pengujian Putaran Motor Stepper
4.4.1. Pengujian putaran Motor stepper Tanpa beban dengan kecepatan tertentu Untuk pengukuran pertama adalah dengan memberikan perintah dari PC. Kepada stepper motor untuk melakukan 50 langkah melalui rangkaian antarmuka, dengan keadaan tanpa beban. Jika standar satu langkah dari stepper motor adalah sebesar 1,80 maka dengan melakukan 50 langkah sudut standar rotasi dari stepper motor adalah sebesar 900 . Namun berdasarkan hasil pengamatan sudut rotasi dari stepper motor setelah melakukan 50 langkah dengan kecepatan 5000 ms adalah sebesar 880 sehingga dapat diketahui derajat per-langkah hasil pegamatan daristepper motor adalah:
880 / 50 langkah = 1,760 Selanjutnya untuk pergerakan 50 langkah dengan kecepatan 10000 ms, sudut standar rotasi hasil pengamatan dari stepper motor adalah sebesar 900:
900 / 50 langkah = 1,80 Untuk pergerakan 50 langkah dengan memperlambat kecepatan sampai 3000 ms, sudut standar rotasi hasil pengamatan dari stepper motor adalah sebesar 900 :
900 / 50 langkah = 1,80
64
Untuk pergerakan 50 langkah dengan memperlambat kecepatan sampai 60000 ms, sudut standar rotasi hasil pengamatan dari stepper motor adalah sebesar 870 :
870 / 50 langkah = 1,740
Tabel 4.7. Hasil Pengamatan Putaran Stepper motor Tanpa Beban Kecepatan (ms) 5000 10000 30000 60000
Sudut Hasil Pengamatan Per step (0) 1,76 1,8 1,8 1,74
Sudut yang ditempuh (0) 88 90 90 87
4.4.2. Pengujian Putaran stepper motor Menggunakan Beban Dengan Kecepatan sama Pada dasarnya pengujian sudut rotasi stepper motor dengan beban yang sama saja dengan pengujian tanpa beban, yang membedakan hanyalah pemberian beban dengan kecepatan yang sama yaitu 10000 ms terhadap putaran dari stepper motor. Beban yang diberi sendiri beratnya kurang lebih 500 gram, beban ini dihubungkan dengan tali penghubung yang kemudian dililitkan ke sumbu dari stepper motor. Untuk pengujian pertama adalah dengan memberikan perintah dari PC kepada stepper motor untuk melakukan 50 langkah melalui rangkaian antarmuka, dengan keadaan stepper motor terbeban. Jika standar satu langkah dari stepper motor adalah sebesar 1,80 maka dengan melakukan 50 langkah sudut standar rotasi
65
dari stepper motor adalah sebesar 900. Tetapi berdasarkan hasil pengamatan sudut rotasi dari stepper motor setelah melakukan 50 langkah adalah 890 sehingga dapat diketahui derajat per-langkah hasil pegamatan dari keadaan stepper motor terbeban adalah:
890 / 50 langkah = 1,780 Pengujian selanjutnya untuk pergerakan 100 langkah, jika standar satu langkah dari stepper motor adalah sebesar 1,80 maka dengan melakukan 100 langkah sudut standar rotasi dari stepper motor adalah sebesar 1800. tetapi berdasarkan hasil pegamatan sudut rotasi dari stepper motor setelah setelah melakukan 100 langkah adalah sebesar 1770 sehingga dapat diketahui derajat perlangkah hasil pengamatan dari keadaan stepper motor terbeban adalah:
1770 / 100 langkah = 1,770 Selanjutnya untuk pergerakan 150 langkah, jika standar satu langkah dari stepper motor adalah sebesar 1,80 maka dengan melakukan 150 langkah sudut standar rotasi dari stepper motor adalah sebesar 2700 . Tetapi berdasarkan hasil pengamatan sudut rotasi dari stepper motor setelah melakukan 150 langkah adalah sebesar 2620 sehingga dapat diketahui derajat per-langkah hasil pengamatan dari keadaan stepper motor terbeban adalah:
2620 / 150 langkah = 1,740 Selanjutnya untuk pergerakan 200 langkah, jika standar satu langkah dari stepper motor adalah sebesar 1,80 maka dengan melakukan 200 langkah sudut standar rotasi dari stepper motor adalah sebesar 3600. Tetapi berdasarkan hasil pengamatan sudut rotasi dari stepper motor setelah melakukan 200 langkah adalah
66
sebesar 3440 sehingga dapat diketahui derajat per-langkah hasil pengamatan keadaan stepper motor terbeban adalah:
3440 / 200 langkah = 1,720
Tabel 4.8. Hasil Pengujian Sudut Rotasi Stepper Motor Dengan Beban
Sudut Langkah Rotasi Standar
Sudut Rotasi Hasil Pengujian
Derajat perlangkah Standar
Derajat perlangkah Hasil Pengujian
Persentase keseluruhan Langkah
50
90 0
89 0
1,8 0
1,79 0
0,55
100
180 0
177 0
1,8 0
1,79 0
0,55
150
270 0
262 0
1,8 0
1,78 0
1,11
200
360 0
344 0
1,8 0
1,77 0
1,67
Rumus umum yang digunakan untuk mencari persentase kesalahan dan digunakan pada semua pengujian adalah sebagai berikut :
% Kesalahan =
Datapengukuran − Datayangsebenarnya × 100% Datayangsebenarnya
Dengan hasil sudut-sudut tersebut diatas maka dapat diketahui dan dicari persentase kesalahan langkah dari keadaan stepper motor terbeban dengan menggunakan rumus umum diatas, yaitu :
67
• 50 Langkah Datapengukuran − Datayangsebenarnya × 100% Datayangsebenarnya
% Kesalahan(1) =
=
1.8 O − 1.79 O × 100% = 0.55% 1.8 O
• 100 Langkah % Kesalahan(2) =
Datapengukuran − Datayangsebenarnya × 100% Datayangsebenarnya =
1.8 O − 1.79 × 100% = 0,55% 1.8 O
• 150 Langkah % Kesalahan(3) =
Datapengukuran − Datayangsebenarnya × 100% Datayangsebenarnya
=
1.8 O − 1.78 × 100% = 1,11% 1.8 O
• 200 Langkah % Kesalahan(3) =
Datapengukuran − Datayangsebenarnya × 100% Datayangsebenarnya
68
=
1.8 O − 1.77 × 100% = 1,67% 1.8 O
Dari tabel 4.8 dapat diketahui dan dihitung persentase kesalahan rata – rata dari sudut rotasi stepper motor, yaitu sebagai berikut: ⎛ 1.79 + 1.79 + 1.78 + 1.77 ⎞ =⎜ ⎟% = 178,25% 4 ⎝ ⎠
4.6. Pengoperasian Keseluruhan Perangkat
Pada pengoperasian keseluruhan perangkat, antara bagian yang satu dengan bagian yang lainnya saling berkaitan. Adapun bagian-bagian tersebut, antara lain: 1. Input
Terdiri dari 3 buah sensor infra red: -
Sensor infra red1, berfungsi untuk mendeteksi ada atau tidaknya benda.
-
Sensor infra red2 & infra red3, berfungsi untuk mendeteksi tinggi rendah benda.
Ketiga buah sensor tersebut didukung oleh 3 buah tranceiver IC74LS245 dan 1 buah multiplexer IC74LS157 untuk penyaluran data input. Tranceiver berfungsi sebagai penyalur data dari sensor infa red. Masing-masing senso infra red dihubungkan pada satu buah tranceiver. Sedangkan multiplexer berfungsi
69
untuk menentukan data dari tranceiver mana yang terlebih dahulu disalurkan menuju parallel port untuk selanjutnya diproses pada program borland delphi. 2. Antar Muka
Pada bagian antar muka, menggunakan parallel port printer DB-25. Paallel port printer berfungsi sebagai konektifitas antara komputer dengan keseluruhan rangkaian. 3. Pemroses Data
Pada bagian pemroses data menggunakan Borland Delphi 7.0. yang berfungsi untuk memproses data input yang masuk dari senso infa red yang kemudian menghasilkan output guna mengoperasikan motor stepper dan juga sensor infra red tersebut. 4. Output
Pada bagian output menggunakan dua buah motor stepper untuk menggerakkan conveyer. Motor1 untuk menggerakkan conveyer1 dan motor2 untuk menggerakkan conveyer2. Beikut merupakan proses kerja keseluruhan perangkat: -
Pastikan bahwa PC dan perangkat dalam keadaan ‘ON’ (siap beroperasi).
-
Klik shotcut project Borland Delphi yang telah disediakan pada desktop komputer. Ketika shortcut project borland delphi telah terbuka, peangkat sudah dalam keadaan stanby (siap menjalankan perintah).
70
-
Pada saat benda manghalangi IR1, IR1 langsung mendeteksi benda dan langsung mengirimkan sinyal menuju parallel pot untuk selanjutnya diproses pada borland delphi.
-
Sinyal output yang dihasilkan borland delphi langsung dikirim menuju motor stepper1 untuk menjalankan conveyer1.
-
Conveyer1 bergerak membawa benda menuju ke IR2 dan IR3.
-
Pada saat benda telah sampai pada IR2 dan IR3, conveyer1 berhenti. Hal ini untuk melakukan pendeteksian benda berdasarkan tinggi rendah.
-
Setelah dilakukan pendeteksian benda, sinyal dari IR2 dan IR3, conveyer1 behenti. Hal ini untuk melakukan pendeteksian benda berdasarkan tinggi rendah.
-
Setelah dilakukan pendeteksian benda, sinyal dari IR2 dan IR3 dikirim menuju borland delphi. Sinyal keluaran dari borland delphi dikirim ke motor stepper2 untuk menjalankan conveyer2, conveyer2 beroperasi untuk menyesuaikan posisi pengepakan benda berdasarkan tinggi rendah.
-
Setelah itu borland delphi mengirimkan sinyal menuju ke motor stepper1 untuk menjalankan conveyer1. Conveyer1 bergerak membawa benda menuju ke conveyer2 ubtuk meletakkan benda pada bagian pengepakan sesuain dengan tempatnya.
-
Pengepakan benda tinggi dan benda rendah memiki kapasitas maksimal sebanyak 3 buah benda.Setelah pengepakan benda rendah atau pengepakan
71
benda tinggi mencapai 3 buah, conveyer2 bergerak membawa benda untuk melakukan pengosongan. Setelah itu conveyer2 bergerak kembali ke posisi semula untuk melakukan pengisian kembali. Demikian seterusnya.
72
BAB V PENUTUP
5.1. Kesimpulan 1. Seluruh pengopersian dari bagian-bagian perangkat tersebut berdasarkan pada perintah data yang telah diproses pada Borland Delphi 7.0. 2. Sinyal input pada parallel port dihasilkan oleh keluaran senso infrared. Untuk bagian pemosesan data dilakukan oleh Borlan Delphi 7.0. yang telah diinstal pada computer. Sinyal output yang dihasilkan dari Borland Delphi dikirim mellui parallel port untuk pengoperasian motor stepper dan juga untuk pengoperasian senso infrared.
5.2. Saran-saran 1. Alat ini masih dapat dikembangkan lagi untuk mencapai hasil yang lebih maksimal. 2. Untuk mengetahui jumlah barang hasil pengepakan dalam satu hari, dapat ditambahkan instruksi program pada Borland Delphi. 3. Untuk membuat system pensotian barang berdasakan bear kecil benda, dapat ditambahkan beberapa sensor dan beberapa instruksi program.
73
DAFTAR PUSTAKA 1. Silaban, P, Fisika , Jilid 1 Edisi Ketiga , Erlangga , Jakarta, (1996) 2. Arianto,W, Belajar Mikroprosesor-Mikrokontroler Melalui Komputer PC, Elex Media komputindo, Jakarta, (1999) 3. Mazidi, Assembly Language Design and Interfacing, The 80x86 IBM PC & Compatible Computer, Prentince Hall, Columbus, Ohio. 4. Lukito,E, Dasar-Dasar Pemrograman Dengan Assembler 8088, Elex Media komputindo, Jakarta, (1993) 5. Hendra, Rancang bangun sistem pengisi botol minuman berbasis Komputer Pribadi, Tugas Akhir Teknik Elektro, Universitas Mercu buana, meruya, (2006).
xvi
unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, jpeg, ExtCtrls, ComCtrls, StdCtrls, ToolWin, Buttons, VrControls, VrMatrix, VrAnalog, VrLabel, VrLcd, VrSpinner, VrDigit, VrButtons;
type TForm1 = class(TForm) Image1: TImage; Panel9: TPanel; Panel10: TPanel; Panel11: TPanel; Timer1: TTimer; Edit1: TEdit; Timer2: TTimer; Timer3: TTimer; Timer4: TTimer; Timer5: TTimer; Timer6: TTimer; Timer8: TTimer; Edit4: TEdit; Edit6: TEdit; Timer9: TTimer; Timer10: TTimer; Timer11: TTimer; Timer13: TTimer; Timer14: TTimer; Timer15: TTimer; BitBtn4: TBitBtn; Edit7: TEdit; Edit8: TEdit; Timer16: TTimer; Edit9: TEdit; Edit10: TEdit; Timer19: TTimer;
1
Timer20: TTimer; Edit11: TEdit; Label5: TLabel; Label14: TLabel; Label16: TLabel; Label2: TLabel; Label3: TLabel; Shape1: TShape; Label6: TLabel; Shape16: TShape; Label8: TLabel; Shape19: TShape; Label11: TLabel; Shape2: TShape; Label1: TLabel; Shape3: TShape; Label4: TLabel; VrMatrix1: TVrMatrix; VrLabel4: TVrLabel; VrLabel5: TVrLabel; VrShadowButton1: TVrShadowButton; VrDigitGroup1: TVrDigitGroup; Timer7: TTimer; VrDigitGroup2: TVrDigitGroup; VrDigitGroup3: TVrDigitGroup; VrDigitGroup4: TVrDigitGroup; UpDown2: TUpDown; UpDown3: TUpDown; VrLabel6: TVrLabel; VrLabel7: TVrLabel; VrDigitGroup5: TVrDigitGroup; VrDigitGroup6: TVrDigitGroup; VrLabel8: TVrLabel; VrLabel9: TVrLabel; VrLabel10: TVrLabel; StatusBar1: TStatusBar; Memo2: TMemo; procedure Timer1Timer(Sender: TObject); procedure Timer2Timer(Sender: TObject);
2
procedure Edit1Change(Sender: TObject); procedure Timer3Timer(Sender: TObject); procedure Timer4Timer(Sender: TObject); procedure Timer5Timer(Sender: TObject); procedure Timer6Timer(Sender: TObject); procedure Timer8Timer(Sender: TObject); procedure Edit4Change(Sender: TObject); procedure Timer9Timer(Sender: TObject); procedure Timer10Timer(Sender: TObject); procedure Timer11Timer(Sender: TObject); procedure Timer13Timer(Sender: TObject); procedure Edit6Change(Sender: TObject); procedure BitBtn4Click(Sender: TObject); procedure Timer16Timer(Sender: TObject); procedure FormCreate(Sender: TObject); procedure Timer19Timer(Sender: TObject); procedure Timer20Timer(Sender: TObject); procedure Edit9Change(Sender: TObject); procedure Edit10Change(Sender: TObject); procedure Edit11Change(Sender: TObject); procedure VrShadowButton1Click(Sender: TObject); procedure UpDown2Click(Sender: TObject; Button: TUDBtnType); procedure UpDown3Click(Sender: TObject; Button: TUDBtnType);
private { Private declarations } public { Public declarations } end;
var Form1: TForm1;
implementation
uses Unit2,rendah1, Math; var maju:boolean;
3
{$R *.dfm}
//Program tampilan jam procedure TForm1.Timer1Timer(Sender: TObject); begin StatusBar1.Panels[0].Text := datetimetostr(now); end; ……………………………………………………………………………………………………….. procedure TForm1.Timer2Timer(Sender: TObject); begin Timer2.Enabled := false;
- Manipulasi tampilan.
Label6.Caption:= 'ON';
- Label6 ‘ON’, shape1 ‘clred’:
menandakan Shape1.Brush.Color := clred;
menandakan benda terdataksi. - Kemudian aktifkan timer3.
Timer16.Enabled:=false; timer19.Enabled:= false; timer20.Enabled:= false; timer3.Enabled:=true; end; ……………………………………………………………………………………………………….. procedure TForm1.Edit1Change(Sender: TObject); begin case strtoint(Edit1.Text) of 46 : Begin timer16.Enabled:= false;
- Sensor IR1 mendeteksi benda. - Kemudian aktifkan timer2.
Timer2.Enabled := true; Shape1.Brush.Color := clwhite; Label6.Caption:= 'OFF';
End; end; end; …………………………………………………………………………………………………..........
4
procedure TForm1.Timer3Timer(Sender: TObject); begin Timer3.Enabled:=false;
- Label1 ‘ON’, shape2 “clred”:
Label6.Caption:= 'OFF';
menandakan conveyor1 aktif.
Shape1.Brush.Color := clwhite;
- Conveyor1 aktif menuju IR2&IR3.
Shape2.Brush.Color := clred;
- Kemudian aktifkan timer19&20.
Label1.Caption:='ON'; Timer5.Enabled:=False; unit2.stpsc4s($378,8,4,2,1,(strtoint(edit7.text)),1290); Timer16.Enabled:=false; timer19.Enabled:= true; timer20.Enabled:= true; end; ……………………………………………………………………………………………………….. procedure TForm1.Timer4Timer(Sender: TObject); begin Timer4.Enabled := false; Shape2.Brush.Color := clwhite; Label1.Caption:='OFF';
- Label8 ‘ON’, shape16 ‘clred’: menandakan benda rendah terdeteksi. - Kemudian aktifkan timer5.
Label8.Caption:= 'ON'; Shape16.Brush.Color := clred; timer5.Enabled:=true; end; ……………………………………………………………………………………………………...... procedure TForm1.Timer5Timer(Sender: TObject); begin Timer5.Enabled:=false; Shape2.Brush.Color := clred; Label1.Caption:='ON';
- Label1 ‘ON’, shape2 ‘clred’: menandakan conveyer1 aktif. - Kemudian aktifkan timer6.
Label8.Caption:= 'OFF'; Shape16.Brush.Color := clWhite; Timer16.Enabled:=false; timer19.Enabled:= false; timer20.Enabled:= false; timer6.Enabled:=true; end; ………………………………………………………………………………………………………..
5
procedure TForm1.Timer6Timer(Sender: TObject); begin Timer6.Enabled:=False;
- Label1 ‘ON’, shape2 ‘clred’:
Shape2.Brush.Color := clred;
menandakan conveyor1 aktif.
Label1.Caption:='ON';
- Conveyor1 aktif dari IR2.
Shape3.Brush.Color := clwhite;
- Kemudian aktifkan timer8.
Label4.Caption:='OFF'; unit2.stpsc4s($378,8,4,2,1,(strtoint(edit7.text)),1350); timer8.Enabled := true; Timer16.Enabled:=false; timer19.Enabled:= false; timer20.Enabled:= false; end; ……………………………………………………………………………………………………….. procedure TForm1.Timer8Timer(Sender: TObject); var penambah,pangkat:integer; begin shape2.Brush.Color := clwhite;
- Perhitungan counter benda rendah.
Label1.Caption:='OFF';
- Keadaan awal =0.
timer8.Enabled := false;
- Jumlah perhitungan maksimal=3.
penambah:=0;
- Setelah melakukan perhitungan,
if strtoint(edit4.text)=0 then penambah:=1;
kemudian kembali lagi ke timer16
if strtoint(edit4.text)=3 then penambah:=1;
untuk melakukan pendeteksian kembali.
if strtoint(edit4.text)=3 then edit4.text:='0'; pangkat:=strtoint(edit4.text); edit4.text:=inttostr(pangkat + 1); memo2.lines.add(log('
Pengisian Box Benda Rendah ke:'+' '+edit4.text+' '+' '));
Timer16.Enabled:=true; timer19.Enabled:= false; timer20.Enabled:= false; end; ……………………………………………………………………………………………………......
6
procedure TForm1.Edit4Change(Sender: TObject); begin case strtoint(Edit4.Text) of 3 : Begin timer16.Enabled:=false; unit2.stpsc4s($378,16,32,64,128,(strtoint(edit7.text)),2030); Rendah.ShowModal ; Edit11.Text:='13'; End;
end; VrDigitGroup2.Value:=StrToInt(Edit4.Text); end; ……………………………………………………………………………………………………….. procedure TForm1.Timer9Timer(Sender: TObject); begin Timer9.Enabled := false;
- Label11 ‘ON’, shape19 ‘clred’ :
Shape2.Brush.Color := clwhite; Label1.Caption:='OFF';
menandakan benda tinggi terdeteksi. - Kemudian aktifkan timer10.
Label11.Caption:= 'ON'; Shape19.Brush.Color := clred; timer10.Enabled:=true; end; ……………………………………………………………………………………………………….. procedure TForm1.Timer10Timer(Sender: TObject); begin Timer10.Enabled:=false;
- Label4 ‘ON’, shape3 ‘clred’:
Shape3.Brush.Color := clred;
conveyor2 aktif menyesuaikan posisi
Label4.Caption:='ON';
pengepakan.
Label11.Caption:= 'OFF';
- Kemudian aktifkan timer11.
Shape19.Brush.Color := clWhite; unit2.stpsc4s($378,16,32,64,128,(strtoint(edit7.text)),500); Timer16.Enabled:=false; timer19.Enabled:= false; timer20.Enabled:= false; timer11.Enabled:=True; end; ………………………………………………………………………………………………………..
7
procedure TForm1.Timer11Timer(Sender: TObject); begin Timer11.Enabled:=False;
- Label1 ‘ON’, shape2 ‘clred’:
Shape2.Brush.Color := clred; Label1.Caption:='ON';
menandakan conveyor1 aktif dari IR2&IR3. - Kemudian aktifkan timer13.
Shape3.Brush.Color := clwhite; Label4.Caption:='OFF'; unit2.stpsc4s($378,8,4,2,1,(strtoint(edit7.text)),1350); Timer16.Enabled:=false; timer19.Enabled:= false; timer20.Enabled:= false; Timer13.Enabled:=true; end; ……………………………………………………………………………………………………….. procedure TForm1.Timer13Timer(Sender: TObject); var penambah,pangkat:integer; begin Shape2.Brush.Color := clwhite;
- Perhitungan counter benda tinggi.
Label1.Caption:='OFF';
- Keadaan awal=0.
timer13.Enabled := false;
- Jumlah perhitungan maksimal=3.
penambah:=0;
- Setelah melakukan perhitungan
if strtoint(edit6.text)=0 then penambah:=1;
kemudian kembali lagi ke timer16
if strtoint(edit6.text)=3 then penambah:=1;
untuk melakukan pendeteksian benda kembali.
if strtoint(edit6.text)=3 then edit6.text:='0'; pangkat:=strtoint(edit6.text); edit6.text:=inttostr(pangkat + 1);
memo2.lines.add(log('
Pengisian Box Benda Tinggi ke:'+' '+edit6.text+' '+' '));
unit2.stpsc4s($378,128,64,32,16,(strtoint(edit7.text)),500); Timer16.Enabled:=true; timer19.Enabled:= false; timer20.Enabled:= false; end; ………………………………………………………………………………………………………..
8
procedure TForm1.Edit6Change(Sender: TObject); begin case strtoint(Edit6.Text) of 3 : Begin timer16.Enabled:=false; unit2.stpsc4s($378,16,32,64,128,(strtoint(edit7.text)),2030); Rendah.ShowModal ; Edit11.Text:='13'; End; end; VrDigitGroup4.Value:=StrToInt(Edit6.Text); end; ……………………………………………………………………………………………………….. procedure TForm1.BitBtn4Click(Sender: TObject); begin close; end; ……………………………………………………………………………………………………...... procedure TForm1.Timer16Timer(Sender: TObject); Var stp:Byte; begin asm
- Timer input untuk sensor benda (IR1).
mov dx,379h;
- Tampilkan data ke edit1.
in ax,dx;
- Sensor IR1 dalam keadaan standby.
mov stp,al;
- Instruksi selanjutnya pada edit1
end; edit1.Text:=IntToStr(stp); end; ……………………………………………………………………………………………………….. TForm1.FormCreate(Sender: TObject); begin asm mov dx,$37A mov al,010b out dx,al end; end; ………………………………………………………………………………………………………..
9
procedure TForm1.Timer19Timer(Sender: TObject); Var stp:Byte; begin asm
- Timer input untuk deteksi benda rendah (IR2 .
mov dx,379h;
- Tampilkan data ke edit9.
in ax,dx;
- Sensor IR2 dalam keadaan standby.
mov stp,al;
- Instruksi selanjutnya pada edit9.
end; edit9.Text:=IntToStr(stp); end; ……………………………………………………………………………………………………….. procedure TForm1.Timer20Timer(Sender: TObject); Var stp:Byte; begin asm
- Timer input untuk deteksi benda tinggi (IR3).
mov dx,379h;
- Tampilkan data ke edit10.
in ax,dx;
- Sensor IR3 dalam keadaan stanby.
mov stp,al;
- Instruksi selanjutnya pada edit10.
end; edit10.Text:=IntToStr(stp); end; ……………………………………………………………………………………………………….. procedure TForm1.Edit9Change(Sender: TObject); begin Case StrToInt(edit9.Text) of 30 : Begin Timer4.Enabled := true;
- Sensor IR2 mendeteksi benda rendah.
timer16.Enabled:=false;
- Kemudian aktifkan timer4.
timer19.Enabled:= false; timer20.Enabled:= false; End; end; end; ………………………………………………………………………………………………………..
10
procedure TForm1.Edit10Change(Sender: TObject); begin case StrToInt(Edit10.Text) of 94 : Begin Timer9.Enabled:=true;
- Sensor IR3 mendeteksi benda tinggi.
timer16.Enabled:=false;
- Kemudian aktifkan timer9.
timer19.Enabled:= false; timer20.Enabled:= false;
end; end; end; ……………………………………………………………………………………………………….. procedure TForm1.Edit11Change(Sender: TObject); begin case strtoint(Edit11.Text) of 13 : Begin timer16.Enabled:=true; Edit11.Text := '0'; End; end; end; ……………………………………………………………………………………………………….. procedure TForm1.VrShadowButton1Click(Sender: TObject); begin Timer7.Enabled:=true; Timer16.Enabled:=true; VrShadowButton1.Visible:=False; end; ……………………………………………………………………………………………………….. procedure TForm1.UpDown2Click(Sender: TObject; Button: TUDBtnType); begin VrDigitGroup1.Value:=StrToInt(IntToStr(UpDown2.Position)); If UpDown2.Position = 3 then UpDown2.Position:= 0; end; ………………………………………………………………………………………………………..
11
procedure TForm1.UpDown3Click(Sender: TObject; Button: TUDBtnType); begin VrDigitGroup3.Value:=StrToInt(IntToStr(UpDown3.Position)); If UpDown3.Position = 3 then UpDown3.Position:= 0; end; end. ……………………………………………………………………………………………………......
12
unit unit2 ;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls, ExtCtrls;
Function Log(S:string):String; Function StpSC1S(add:word;data:byte):Integer; Function StpSC4S(add:word;data1,data2,data3,data4:byte;DLY,PTR:integer):Integer;
implementation
uses Unit1;
Function Log(S:string):String; var Present: TDateTime; Year, Month, Day, Hour, Min, Sec, MSec: Word; TH,BL,TG,JM,MN,DT:string; begin Present:= Now; DecodeDate(Present, Year, Month, Day); DecodeTime(Present, Hour, Min, Sec, MSec); TH:=inttostr(Year); if month<10 then BL:='0'+inttostr(month) else BL:=inttostr(month);
13
if Day<10 then TG:='0'+inttostr(Day) else TG:=inttostr(Day); if Hour<10 then JM:='0'+inttostr(Hour) else JM:=inttostr(Hour); if Min<10 then MN:='0'+inttostr(Min) else MN:=inttostr(Min); if Sec<10 then DT:='0'+inttostr(Sec) else DT:=inttostr(Sec); Log:=TG+'/'+BL+'/'+TH+'
'+JM+':'+MN+':'+DT+' '+S;
end;
function StpSC1S(ADD:word;Data:Byte):Integer; begin asm mov dx,add mov al,data out dx,al end; end; //End Single Coil Half Stepping
//4 Step Single Coil Half Stepping Function StpSC4S(add:word;Data1,Data2,Data3,Data4:Byte;DLY,PTR:integer):Integer; var I,C:integer; Label Ulang,Selesai; begin C:=0; Ulang: Application.ProcessMessages; for I:=1 to DLY do asm mov dx,add mov al,data1 out dx,al end; Application.ProcessMessages; for I:=1 to DLY do
//Delay step 2
asm mov dx,add mov al,data2
14
out dx,al end; Application.ProcessMessages; for I:=1 to DLY do
//Delay step 3
asm mov dx,add mov al,data3 out dx,al end; Application.ProcessMessages; for I:=1 to DLY do
//Delay step 4
asm mov dx,add mov al,data4 out dx,al end; C:=C+1; if C
end.
15
4