BAB III PERENCANAAN DAN REALISASI 3.1 Deskripsi Sistem Nama Sistem :Simulasi Monitoring Downtime Mesin Dengan Visual Basic 6.0 Fungsi :Pencatatan Downtime Mesin. Keunggulan : Mencatat Downtime Mesin Secara Otomatis Untuk Mengetahui Efektifitas Mesin Dan Perancanaan Produksi dan Perawatan. Spesifikasi : 1. Prosessor Pentium 133MHz 2. Hard Disk free space 10 MB 3. Memory 64 MB SDRAM 4. Data I/O = 00h - FFh 5. Bahasa Pemrograman Visual Basic 6.0 3.2 Perancangan Sistem 3.2.1 Diagram Blok Sistem Input : Berupa simulasi mesin ON atau OFF Output : Data Record Proses: Software Gambar 3.1. Blok Diagram Sistem
3.2.2 Flowchart Sistem Star Read &H379 Busy Yes No Write &H378 88 Busy Yes = 255 No Write &H378 88 Busy Yes = 63 No Write &H378 88 Busy Write &H378 88 Busy Write &H378 88 NotBusy Yes Yes = 111 No = 88 No Gambar 3.2. Flowchart System Perinsip Kerja dari system ini sangat sederhana sekali. Penulis meng-klasifikasikan setiap downtime yang terjadi menjadi tiga jenis yaitu 1. Unpredicted Downtime : yaitu downtime yang terjadi secara tidak terprediksi yang bisa disebabkan karena mati lampu atau kerusakan yang terjadi karena tidak disengaja atau tidak deketahui atau diharapkan sama sekali. Jenis downtime ini adalah jenis downtime yang sangat tidak diharapkan karena akan mengganggu kelancaran produksi.
2. Predicted Downtime : Jenis downtime terprediksi ini adalah jenis downtime yang memang terschedule seperti waktu istirahat, saat libur atau memang saat mesin tidak digunakan karena keinginan produksi. 3. Engineering Downtime : Jenis downtime ini adalah downtime yang dilakukan oleh pihak engineering setelah terjadi kesepakatan dengan pihak terkait untuk melakukan hal-hal seperti regular maintenance atau modifikasi. Untuk unpredicted downtime, penulis memanfaatkan signal atau data dari pilot lamp yang ada di mesin, yang mana pilot lamp ini akan mendapatkan tegangan berupa tegangan DC 5 Volt jika terjadi sesuatu yang membuat mesin tidak bekarja. Kemudian tegangan ini akan di inputkan kedalam PC melalui paralel port untuk diolah oleh software. Sedangkan untuk Predicted Downtime dan Engineering Downtime serta tombol reset, penulis memanfaatkan konfigurasi push button secara manual juga akan memberikan sinyal berupa tegangan DC 5 Volt yang akan di inputkan melalui paralel port untuk diolah dan dikenali oleh PC. UPD PRD ENG RST Gambar 3.3. Push Buton Simulator
1 14 2 3 15 Unpredicted Unpredicted 16 4 17 5 18 Predicted Predicted DB 25/Paralel Port 6 7 8 19 20 21 Engineering Engineering 9 22 10 11 23 Reset Reset 24 12 25 13 Gambar 3.4. Rangkaian System 3.2.3. LPT1 Dengan Visual Basic 6.0 Visual Basic 6.0 tidak memiliki fasilitas langsung untuk mengakses port-port perangkat keras ke dalam sistem komputer. Untuk mengakses port-port tersebut diperlukan bantuan tambahan berupa file-file dalam Dynamic Link Library (DLL) atau dari file ActiveX Control (OCX). File yang dapat digunakan untuk mengakses port LPT1 adalah inpout32.dll. Paralel port biasanya dapat ditemukan di belakang PC dengan 25 pin perempuan atau konektor DB25 yang umumnya digunakan untuk menghubungkan printer. Berikut gambar konektor DB25: Gambar 3.5. Konetor DB25
Tabel 3.1 Fungsi Pin pada Konektor DB25 Langkah-langkah untuk mengakses LPT1 dengan menggunakan Visual Basic 6.0 adalah sebagai berikut: 1. Copy file inpout32.dll ke direktori C:\WINDOWS\SYSTEM lalu di register dengan REGSVR32.exe Start>Run : REGSVR32 C:\WINDOWS\SYSTEM\inpout32.dll 2. Untuk dapat mengakses port-port dalam LPT1 maka sebelumnya harus dilakukan pengaturan dari LPT1 dengan memasukkan Function Inp dan Sub Out pada modul dari project visual basic. Pengaturan LPT1: Option Explicit Public Declare Function Inp Lib inpout32.dll Alias Inp32 (ByVal PortAddress As Integer) As Integer Public Declare Sub Out Lib inpout32.dll Alias Out32 (ByVal PortAddress As Integer, ByVal Value As Integer)
3.2.4. Metode Pembacaan dan Penulisan Pada Port LPT1 Metode pembacaan dan penulisan pada port LPT1 hanya dapat dilakukan dengan metode pembacaan dan penulisan langsung 8 bit data. Nilai data yang dibaca maupun ditulis dalam besaran desimal. 1. Pembacaan Pada Port LPT1 Pembacaan pada port sama halnya dengan kita melakukan pengecekan pada nilai masukan yang diberikan pada port tersebut. Syntax : Inp PortAddress Untuk PortAddress dari LPT1 adalah 378H atau 888 desimal. 2. Penulisan Pada Port LPT1 Penulisan pada port sama halnya dengan kita melakukan proses pemberian nilai keluaran pada port tersebut. Syntax : Out PortAddress, Nilai Untuk PortAddress dari LPT1 adalah 378H atau 888 desimal dan Nilai dalam satuan desimal. 3.3 Perancangan dan Pembuatan Perangkat Lunak 1. Form Splash Gambar 3.6. Tampilan form Splash
Form Splash ini akan muncul pada saat pertama kali program dijalankan. Sebagaimana terlihat pada gambar 3.3. form ini menampilkan nama program serta nama pembuat dari program dan beberapa informasi lain. Form ini hanya akan tampil selama beberapa saat saja (± 5 detik). 2. Menu Select User Gambar 3.7. Tampilan menu User Log In Menu Select User ini akan muncul setelah menu Splash pada saat akan masuk ke menu Utama. Menu Select User memberikan pilihan kepada penggguna apakah akan masuk sebagai Operator atau sebagai Engineer. Jika pengguna masuk sebagai operator maka pengguna hanya memiliki hak akses untuk mengggunakan program saja, tapi jika pengguna masuk sebagai engineer maka pengguna memiliki hak akses untuk mengunakan program sekaligus merubah beberapa seting program yang ada, seperti meregister nama-nama pengguna yang dapat menggunakan program. Jika belum ada nama pengguna yangg ter-register untuk mengggunakan program ini, maka pilihan akan diarahkan untuk pilihan engineer, sehingga dapat me-register terlebih dahulu nama-nama penggguna yang bisa masuk kedalam program monitoring downtime mesin ini
3. Menu Registration Gambar 3.8. Tampilan menu Admin Log In Menu Registration hanya bisa diakses oleh pengguna yang terdaftar sebagai engineer. Proses registrasi ini harus dilakukan pertama kali program digunakan untuk menentukan nama-nama pengguna yang dapat menggunakan program ini serta pemberian password masing-masing pengguna. If TxtId.Text = "" Then strm = "Anda belum mengisi nomor ID!": GoTo errlabel ElseIf TxtName.Text = "" Then strm = "Anda belum mengisi nama!": GoTo errlabel ElseIf TxtAddress.Text = "" Then strm = "Anda belum mengisi alamat Anda!": GoTo errlabel ElseIf TxtPh.Text = "" Then strm = "Anda belum mengisi nomor telepon!": GoTo errlabel End If With DatRegistration.Recordset.AddNew.Recordset!NoId = TxtId.Text.Recordset!Name = TxtName.Text.Recordset!Address = TxtAddress.Text.Recordset!PhNo = TxtPh.Text.Recordset!Registerd = Now
.Recordset.Update.Recordset.MoveLast.Refresh End With 'CreateTestTable TxtId.Text ClearTextBoxs isnotready TxtId.Enabled = True TxtId.TabIndex = 0 Exit Sub 4. Menu LogIn Gambar 3.9. Tampilan menu User Registration Menu LogIn akan muncul sesaat setelah pengguna memilih masuk sebagai operator. Nama-nama operator yang sudah diregister akan muncul pada combo-box. Para pengguna hanya tinggal memilih nama mereka masing-masing dan memasukan password masing masing yang juga sudah ter-register. Jika ada nama yang belum terregister maka harus di-register dahulu dengan cara masuk terlebih dahulu sebagai engineer yang memiliki hak akses untuk meregister nama serta pasword masing masing pengguna yang bisa mengggunakan program ini If OperatorName = "" Then Exit Sub ConfirmOpName OperatorName, cmblists, EntryDate If Not Report Then If Not cmblists Then MsgBox "Unregisterd", vbokonly, "Please Register" Unload Me Else If TxtPassword.Text = Temp Then
MsgBox OperatorName & " Registerd on " & EntryDate, vbokonly, "Telah Terdaftar" Load FrmRecord FrmRecord.Show FrmRecord.mChangePassword.Enabled = False Unload Me Else MsgBox "Nomor ID Operator yang anda pilih Salah", vbokonly, "Perhatian" TxtPassword.SetFocus SendKeys "{Home}+{End}" End If End If Else If TxtPassword.Text = Temp Then Unload Me Else MsgBox "Nomor ID Operator yang anda pilih Salah", vbokonly, "Perhatian" TxtPassword.SetFocus SendKeys "{Home}+{End}" End If End If
5. Menu Utama Gambar 3.10. Menu Utama Pada layar menu utama program dibagi menjadi lima bagian menu, yaitu sebagai berikut: 1. File Menu ini terdiri dari sub menu Register User, Change User serta sub menu change password dan Exit. a. Sub menu Register User digunakan untuk meregister nama-nama operator yang dapat menggunakan program. Menu ini hanya dapat di akses oleh pengguna yang masuk sebagai engineer. b. Sub menu Change User digunakan untuk berpindah dari status pengguna apakah dari operator ke engineer dan atau sebaliknya.
c. Sub menu Change Password digunakan untuk mengganti password user sebagai engineer. Menu ini hanya dapat di akses oleh pengguna yang masuk sebagai engineer. d. Sub menu Exit digunakan untuk keluar dari program. 2. Report Menu ini digunakan user untuk melihat data downtime yang terekam secara otomatis saat program dijalankan. Data yang tercatat meliputi jam saat mesin mati dan saat mesin hidup kembali serta lamanya durasi mesin tersebut mati secara keseluruhan. Data ini dapat dilihat masing-masing untuk perepotan secara harian, mingguan atau bulanan. 3. Utility Menu ini berisi sub menu calculator dan notepad yang akan membantu pengguna untuk perhitungan atau pencatatan secara lebih cepat. 3. Windows Menu Windows akan menampilkan windows-windows yang sedang aktif saat program dijalankan. 4. Help Menu Help terdiri dari dua sub menu Author dan Instruction. Sub menu author akan menampilkan biografi singkat pembuat program ini sedangkan sub menu Instruction akan memerikan penjelasan secara singkat bagai mana penggunaan program ini.
6. Menu Change Password Gambar 3.11. Menu Change Admin Password Menu Change Password digunakan untuk mengubah atau mengganti password aktif yang akan digunakan dalam menu engineer log in. Password merupakan accses key yang sangat penting, maka ada baiknya untuk pengguna yang memiliki hak akses sebagai engineer untuk merubah paswordnya secara berkala. Untuk mengakses menu Ubah Password ini maka pilihlah menu File pada menu utama program lalu pilihlah menu Change Pasword. Pada layar tampilan Change Password terdapat input data : Old Password digunakan untuk menginput password lama user yang menggunakan program. New Password digunakan untuk menginput password baru bagi user tersebut dalam program. Confirm Password digunakan untuk menginput ulang password baru user tersebut yang telah diinput pada kotak input Password Baru dengan tujuan untuk memastikan bahwa password baru yang diinput tersebut adalah benar. Password yang diinput disini harus sama dengan password yang diinput pada kotak input Password Baru. Setelah selesai mengganti password maka pilihlah command button OK agar password baru yang diinput tersebut dapat berlaku atau pilihlah command button Cancel untuk membatalkan penggantian password.... Private Sub cmdok_click() If Text2.Text <> "" Or Text3.Text <> "" Then If Text2.Text = Text3.Text Then EditPassword Text3.Text MsgBox "Change password confirmed", vbinformation + vbokonly
Unload Me Else MsgBox "The Password you type did not match, please retype the new password", vbexclamation + vbokonly, "Oops..." End If End If End Sub (Text2 = input password baru, Text3 = input konfirmasi password baru) 7. Menu Author Gambar 3.12. Tampilan menu Author Menu Author akan memberikan keterangan secara singkat biografi pembuat program.
8. Menu Instruction Gambar 3.13. Tampilan menu Instruction program. Menu Instruction ini akan memberikan gambaran singkat tentang penggunaan 3.4 Perancangan Perangkat Keras Untuk Simulasi Perangkat keras dibutuhkan sebagai sarana simulasi penggunaan program ini berupa rangkaian switch yang terbagi menjadi 4 bagian. Switch pernama akan mengindikasikan bahwa mesin mati secara tidak terprediksi, switch kedua akan mengindikasikan bahwa mesin mati terprediksi atau terencana, switch ke tiga akan mengindikasikan bahwa mesin mati karena keperluan engineering sedangkan switch yang terakhir sebagai tombol reset jika mesin sudah dalam kondisi normal kembali.