BAB V KESIMPULAN DAN SARAN
5.2 Saran
Setelah melakukan penulisan ini diperoleh beberapa hal yang dapat dijadikan saran untuk dapat dilakukan perancangan lebih lanjut, yaitu :
1. Diharapkan laporan ini dan alatnya dapat bermanfaat serta dapat dikembangkan lagi.
2. Penelitian yang serupa perlu ditingkatkan lagi mengingat begitu pentingnya informasi curah hujan bagi kehidupan di berbagai sektor.
3. Untuk mendapatkan nilai yang optimal diperlukan beberapa pengaturan pada jungkitan / tippingan dengan memperkecil resolusi pengukuran curah hujan dalam tiap jungkitan, misalnya menjadi 0,1 mm dalam 1 jungkitan. Hal ini untuk mengurangi faktor error yan timbul akibat perbedaan jumlah curah hujan yang terukur.
DAFTAR PUSTAKA
Achmadi, S., 2009, Penakar Curah Hujan Otomatis Dengan Data Logger SD/MMC Berbasis SMS ( Short Message Services), Semarang
Afiandhie, H., 2010 , Perancangan Alat Ukur untuk Menghitung Tingkat Curah Hujan dengan Menggunakan Pengiriman Data Wireless, Skripsi, Fakultas Teknik dan Ilmu Komputer, Unikom, Bandung
Agustinus Nalwan, 2004, Membuat Program Profesional Secara Cepat Dengan VB, Penerbit : PT. Elex Media Komputindo, Jakarta
Agfianto, 2002, Teknik Antarmuka Komputer: Konsep dan Aplikasi, Edisi Pertama, Penerbit: Graha Ilmu, Yogyakarta,
Budianto Bregas dan C.Setiawan Arif, 2003, Komputer Untuk Pengamatan Cuaca dan Pengembangannya, Pelatihan Dosen, Penerbit : Departemen Geofisika dan Meteorologi IPB, Bogor
Handoko, A. C. Setiawan dan B. Budianto, 1998, Otomatisasi Sistem Pengukuran Cuaca pada Stasiun Klimatologi untuk Menunjang Perencanaan Pertanian di Indonesia, Usul Penelitian, Penerbit : Lembaga Penelitian Institut Pertanian Bogor bekerja sama dengan Badan Penelitian dan Pengembangan Pertanian Agricultural Research Management (ARM) Project, Bogor
Hari Wibawanto, 2008, Elektronika Dasar : Pengenalan Praktis, Penerbit : PT. Elex Media Komputindo, Jakarta
Ishadamy, 1994, Otomatisasi Sistem Instrumentasi Meteorologi, Skripsi. Jurusan Geofisika dan Meteorologi FMIPA IPB, Bogor
Manan, ME, Nursiwan, MA, dan Sudarsono, 1986, Alat Pengukur Cuaca di Stasiun Klimatologi, Penerbit : Institut Pertanian Bogor, Bogor
Mike Tooley, 2003, Rangkaian Elektronik Prinsip Dan Aplikasi, Edisi Kedua, Penerbit : Erlangga, Jakarta
Prasetia Retna, 2004, Interfacing Port Pararel dan Serial Komputer dengan Visual Basic 6.0, Penerbit : PT. Elex Media Komputindo, Jakarta
Zakir, Achmad., Sulistya, Widada., Khotimah,.Mia K., “Prespektif Operasional Cuaca Tropis”, (Jakarta: Badan Meteorologi Klimatologi dan Geofisika, 2010).
http://www.datasheetcatalog.orgdatasheet/pdf / Data Sheet ATS 276 : di Unggah 28 Januari 2013
http://www.honeywell-sensor.com/magnetic_position/chapter2.pdf / Data Sheet ATS 276 : di Unggah 28 Januari 2013
http://www.wellsve.com/sft503/Counterpoint3_1.pdf/ Understanding Hall Effect Sensor : di Unggah 07 Peberuari 2013
http://www.annml.files.wordpress.com_konsumsi-daya-pada usb-port1.pdf/
Konsumsi Daya pada USB Port dan Pengaruhnya pada Pemakaian Peralatan USB : di Unggah 03 Pebruari 2013
CODE PROGRAM Form1 - 1
'Fungsi Explicit menggunakan lybrary yang telah tersedia Option Explicit
Private Declare Function joyGetDevCaps Lib "winmm.dll" Alias "joyGetDevCapsA" (ByVal id As Long, By
Val uSize As Long) As Long
Private Declare Function joyGetPos Lib "winmm.dll" (ByVal uJoyID As Long, pji As Sinyal) As Long
'Inisialiasi Sinyal Masukan Private Type Sinyal
wXpos As Long wYpos As Long wZpos As Long indikator As Long End Type
'Pengenalan Antarmuka USB Const antarmuka As Long = &H0 'Bagian pengakhir Program Dim WaktuBerakhir As Boolean 'pengaman Dim toggle1 Dim toggle2 Dim toggle3 Dim toggle4 Dim toggle5 Dim togelsave Dim ekstrim Dim matikan 'universal Dim FrekuensiAnalog 'unsur cuaca Dim Hujan
Dim cHujan Dim cHujanPerHujan Dim HujanPerJam Dim hujanmax Dim lama Dim lamamnt Dim lamajam Dim lamahujan Dim lamasave 'Counter Dim grafhujan(28) Dim SS, pos1a, pos2a Dim S, pos1, pos2 Dim GT, GHujan Dim OYP&, OXP& 'Pengatur Tanggal dan Jam Dim waktureset As String Dim menit As String Dim jam
Dim sev Dim bulan
Dim waktumin1 As Date Dim waktumin2 As Date Dim waktumin3 As Date Dim waktumin4 As Date Dim wktmin1 As Date Dim wktminmax1 As Date Dim wktmin2 As Date Dim wktmin3 As Date Dim wktmin4 As Date Form1 - 2
Dim wktmin5 As Date Dim wktmin6 As Date
Dim wktmin7 As Date Dim wktmin8 As Date Dim wktmin9 As Date Dim wktmin10 As Date Dim wktmin11 As Date Dim wktmin12 As Date 'pengaturan tabel Dim tbl
'pengaturan penyimpanan Dim tims1 As String Dim tims2 As String Dim tanggal As Date Dim anibaner As Integer
Dim J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11, J12, J13, J14, J15, J16, J17, J18, J19, J20, J21,
J22, J23, J24 As String
'inti proses pengembalilan dan pengolahan data Private Sub Proses()
'menjalankan program inti On Error Resume Next
Dim sinyalmasukan As Sinyal Me.Show
Do DoEvents
'berhubungan dengan perangkat dengan antar muka usb joyGetPos antarmuka, sinyalmasukan
'===== PEMBACAAN DATA ======= '--- Curah Hujan
If sinyalmasukan.indikator And 256 Then Shapea(0).Visible = True
Else
Shapea(0).Visible = False End If
If Shapea(0).Visible = True And toggle2 = 0 Then cHujan = cHujan + 1 cHujanPerHujan = cHujanPerHujan + 1 Hujan = cHujan * 0.5 Label2.Caption = Format(Hujan, "##0.0") HujanPerJam = cHujanPerHujan * 0.5 Label17.Caption = Format(HujanPerJam, "#0.0")
If HujanPerJam < 1.2 Then Label8.Caption = "Sangat Lemah"
If HujanPerJam > 1.1 And HujanPerJam < 3 Then Label8.Caption = "Lemah" If HujanPerJam > 2.9 And HujanPerJam < 15 Then Label8.Caption = "Sedang" If HujanPerJam > 14.9 And HujanPerJam < 60 Then Label8.Caption = "Deras" If HujanPerJam > 59.9 Then Label8.Caption = "Sangat Deras"
'label8.caption toggle2 = 1 End If
If Shapea(0).Visible = False Then toggle2 = 0
End If
'Bagian Akhir Inti Program DoEvents
Loop Until WaktuBerakhir Quit:
DoEvents Unload Me Form1 - 3 End Sub
Private Sub Command1_Click() cHujan = cHujan + 1 cHujanPerHujan = cHujanPerHujan + 1 Hujan = cHujan * 0.5 Label2.Caption = Format(Hujan, "##0.0") HujanPerJam = cHujanPerHujan * 0.5 Label17.Caption = Format(HujanPerJam, "#0.0")
If HujanPerJam < 1.2 Then Label8.Caption = "Sangat Lemah"
If HujanPerJam > 1.1 And HujanPerJam < 3 Then Label8.Caption = "Lemah" If HujanPerJam > 2.9 And HujanPerJam < 15 Then Label8.Caption = "Sedang" If HujanPerJam > 14.9 And HujanPerJam < 60 Then Label8.Caption = "Deras" If HujanPerJam > 59.9 Then Label8.Caption = "Sangat Deras"
End Sub
Private Sub Command2_Click() Frame1.Visible = False
End Sub
Private Sub Command3_Click() Frame1.Visible = True
End Sub
Private Sub Command4_Click() 'menulis data ke tabel
tbl = tbl + 1 With tabel1
.Rows = tbl .Row = tbl - 1
.Col = 0: .Clip = Label6.Caption .Col = 1: .Clip = Label5.Caption
.Col = 2: .Clip = Format(Hujan, "#0.0") End With
If tbl = 25 Then tbl = 0 'Grafik Intensitas Curah Hujan On Error Resume Next
Picture3.Cls
lamahujan = Val(Label17.Caption) * 2 grafhujan(28) = lamahujan
For SS = 2 To 28
grafhujan(SS) = grafhujan(SS + 2)
Picture3.Line (((SS * 1.9) - 1.2), 0)-((SS * 1.9) + 1.2, grafhujan(SS)), vbRed, BF Next SS
'menentukan hujan maximum If HujanPerJam > hujanmax Then hujanmax = HujanPerJam
Label12.Caption = Format(hujanmax, "#0.0") 'waktu now
wktminmax1 = DateAdd("h", 1, Time)
Label9.Caption = Format(Now, "hh") & ".00-" & Format(wktminmax1, "hh") & ".00" End If
'reset nilai curah hujan tiap jam wktmin1 = DateAdd("h", -1, Time)
Label18.Caption = Format(wktmin1, "hh") & ".00-" & Format(Now, "hh") & ".00" 'label18.Caption= Label14.Caption = Label17.Caption Form1 - 4 cHujanPerHujan = 0 HujanPerJam = 0 Label17.Caption = "0" End Sub
Private Sub Form_Load() 'cerah.Visible = True togelsave = 0
'Menampilkan Tanggal dan jam terkini Label5.Caption = Format(Now, "hh:mm:ss") Label6.Caption = Format(Now, "dd-MM-yyyy") Label7.Caption = Format(Now, "dddd") hujanmax = 0 Frame1.Visible = False 'pembuatan tabel tbl = 1 With tabel1 .Rows = 24 .Cols = 3 .Row = 0:
.Col = 0: .Clip = "Tanggal": .ColWidth(0) = 1200 .Col = 1: .Clip = " Jam ": .ColWidth(1) = 1000 .Col = 2: .Clip = "Curah Hujan": .ColWidth(2) = 2000 End With
'eksekusi program Proses
End Sub
Private Sub Timer1_Timer()
FrekuensiAnalog = FrekuensiAnalog + 1 anibaner = anibaner + 1
If anibaner = 2 Then lblhead.ForeColor = vbRed If anibaner = 4 Then lblhead.ForeColor = &H80FF80 If anibaner = 6 Then lblhead.ForeColor = &HFF8080 If anibaner = 8 Then lblhead.ForeColor = &H80FF80 If anibaner = 8 Then anibaner = 0
Label5.Caption = Format(Now, "hh:mm:ss") Label6.Caption = Format(Now, "dd-MM-yyyy") Label7.Caption = Format(Now, "dddd")
menit = Format(Now, "nn") 'menyimpan tiap 1 jam
If menit = "00" And togelsave = 0 Then On Error Resume Next
tims2 = Format(Now, "MMddyyyy")
Open "D:\DATA\" + tims2 + ".csv" For Append As #2
Write #2, Label6.Caption, Label5.Caption, Format(Hujan, "000"), Close #2
'Grafik Intensitas Curah Hujan On Error Resume Next
Picture3.Cls
lamahujan = Val(Label17.Caption) * 2 grafhujan(28) = lamahujan
For SS = 2 To 28
Picture3.Line (((SS * 1.9) - 1.2), 0)-((SS * 1.9) + 1.2, grafhujan(SS)), vbRed, BF Next SS
Form1 - 5 lamasave = 0
'menentukan hujan maximum If HujanPerJam > hujanmax Then hujanmax = HujanPerJam
Label12.Caption = Format(hujanmax, "#0.0") 'waktu now
wktminmax1 = DateAdd("h", 1, Time)
Label9.Caption = Format(Now, "hh") & ".00-" & Format(wktminmax1, "hh") & ".00" End If
'reset nilai curah hujan tiap jam wktmin1 = DateAdd("h", -1, Time)
Label18.Caption = Format(wktmin1, "hh") & ".00-" & Format(Now, "hh") & ".00" 'label18.Caption=
Label14.Caption = Label17.Caption cHujanPerHujan = 0
HujanPerJam = 0 Label17.Caption = "0"
'pengaturan label waktu grafik lama hari 'waktu now
wktmin1 = DateAdd("h", -1, Time)
lbltm1(11).Caption = Format(wktmin1, "hh") & "-" & Format(Now, "hh") 'waktu min-1
wktmin2 = DateAdd("h", -2, Time)
lbltm1(10).Caption = Format(wktmin2, "hh") & "-" & Format(wktmin1, "hh") 'waktu min-2
wktmin3 = DateAdd("h", -3, Time)
lbltm1(9).Caption = Format(wktmin3, "hh") & "-" & Format(wktmin2, "hh") 'waktu min-3
wktmin4 = DateAdd("h", -4, Time)
'waktu min-4
wktmin5 = DateAdd("h", -5, Time)
lbltm1(4).Caption = Format(wktmin5, "hh") & "-" & Format(wktmin4, "hh") 'waktu min-5
wktmin6 = DateAdd("h", -6, Time)
lbltm1(5).Caption = Format(wktmin6, "hh") & "-" & Format(wktmin5, "hh") 'waktu min-6
wktmin7 = DateAdd("h", -7, Time)
lbltm1(6).Caption = Format(wktmin7, "hh") & "-" & Format(wktmin6, "hh") 'waktu min-7
wktmin8 = DateAdd("h", -8, Time)
lbltm1(7).Caption = Format(wktmin8, "hh") & "-" & Format(wktmin7, "hh") 'waktu min-8
wktmin9 = DateAdd("h", -9, Time)
lbltm1(8).Caption = Format(wktmin9, "hh") & "-" & Format(wktmin8, "hh") 'waktu min-9
wktmin10 = DateAdd("h", -10, Time)
lbltm1(12).Caption = Format(wktmin10, "hh") & "-" & Format(wktmin9, "hh") 'waktu min-10
wktmin11 = DateAdd("h", -11, Time)
lbltm1(13).Caption = Format(wktmin11, "hh") & "-" & Format(wktmin10, "hh") 'waktu min-11
wktmin12 = DateAdd("h", -12, Time)
lbltm1(14).Caption = Format(wktmin12, "hh") & "-" & Format(wktmin11, "hh") 'cHujanPerHujan = 0 togelsave = 1 End If Form1 - 6 If menit <> "00" Then togelsave = 0 End If waktureset = Format(Now, "hh:mm:ss") If waktureset = "23:59:59" Then
cHujan = 0 cHujanPerHujan = 0 Hujan = 0 HujanPerJam = 0 hujanmax = 0 Label2.Caption = "0,0" Label14.Caption = "0,0" Label17.Caption = "0,0" Label12.Caption = "0,0" Label18.Caption = "00.00-00.00" Label9.Caption = "00.00-00.00" End If End Sub
Private Sub Form_Unload(Cancel As Integer) WaktuBerakhir = True
End End Sub
Private Sub Timer2_Timer() 'Menampilkan label Jam J1 = Now
'menulis data ke tabel tbl = tbl + 1
With tabel1
.Rows = tbl .Row = tbl - 1
.Col = 0: .Clip = Label6.Caption .Col = 1: .Clip = Label5.Caption .Col = 2: .Clip = Format(Hujan, "000") End With
If tbl = 25 Then tbl = 0
'penyimpanan data ke dalam hardisk 'lamasave = 0