Pembuatan Alat Ukur Telemetri Curah Hujan Tipe Tipping Bucket Menggunakan Sensor Reed Switch Mikrokontroler Atmega8535 Berbasis Android

43

LAMPIRAN

Pemograman Code Vision AVR

#include
#include
#include

void main(void)
{
PORTA=0x0F;
DDRA=0x00;
PORTB=0x0F;
DDRB=0x00;
PORTC=0x00;
DDRC=0x0F;
PORTD=0xFC;
DDRD=0x03;


// USART initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART Receiver: On
// USART Transmitter: On
// USART Mode: Asynchronous
// USART Baud Rate: 56000 (Double Speed Mode)
UCSRA=0x02;
UCSRB=0x18;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x08;

while (1)
{ if (PINB.0 == 0){

Universitas Sumatera Utara

44

while (PINB.0 == 0){}

printf("D");
}
delay_ms(100);
}
}

Pemograman Visual Basic

Dim TIMES(0 To 1000) As String
Dim f As String
Dim Temp1, Temp2 As Single
Dim i, j, Jam, TotalCurahHujan, Intensitas, CHRata2 As Integer
Dim Hour(0 To 24) As String
Dim oXL As Excel.Application
Dim Intensity(1 To 1000), Average(1 To 1000), Total(1 To 1000) As Integer

Private Sub Command1_Click()
Set oXL = New Excel.Application
Set oxlbook = oXL.Workbooks.Add
FileName = "C:\Data\" + Text3 + ".xls"


oxlbook.Worksheets(1).Range("A1") = " Mean Time "
oxlbook.Worksheets(1).Range("B1") = " Intensity "
oxlbook.Worksheets(1).Range("C1") = " Average "
oxlbook.Worksheets(1).Range("D1") = " Total "

Universitas Sumatera Utara

45

oxlbook.SaveAs FileName

For i = 2 To j
oxlbook.Worksheets(1).Range("A" & i) = TIMES(i)
oxlbook.Worksheets(1).Range("B" & i) = Intensity(i)
oxlbook.Worksheets(1).Range("C" & i) = Average(i)
oxlbook.Worksheets(1).Range("D" & i) = Total(i)
Next i

On Error GoTo 1


oxlbook.SaveAs FileName
oxlbook.Close

1:

End Sub

Private Sub Command4_Click()
Unload Me
End Sub

Private Sub Form_Load()

Universitas Sumatera Utara

46

With MSComm1
If .PortOpen = True Then .PortOpen = False

.DTREnable = True
.RTSEnable = True
.RThreshold = 1
.SThreshold = 0
MSComm1.PortOpen = True

End With
Temp1 = 0

For i = 0 To 24
Hour(i) = 0
Next i
j=1

'reset nilai count

For i = 1 To 24
MSChart1.Column = i
MSChart1.Data = Hour(i)
Next i


End Sub

Private Sub Timer1_Timer()
Data = MSComm1.Input
If Data "" Then

Universitas Sumatera Utara

47

If Data = "D" Then
Temp1 = Temp1 + 1
End If
End If
Label12 = Temp1
End Sub

Private Sub Timer2_Timer()
Text2 = Time

Text1 = Time
If Text2 = "00:00:00 AM" Then
End If

Dat = Left(Text1, 8)
Dat = Right(Dat, 5)
Text1 = Dat

If Text1 = "00:00" Then
Intensitas = Label12 * 0.5 / 60 * 100
Label6 = Intensitas
TotalCurahHujan = TotalCurahHujan + Intensitas * 60 / 100
Label5 = TotalCurahHujan

Text1 = Time
Dat = Left(Text1, 5) 'baca jumlah jam
Jam = Left(Text1, 1)

Universitas Sumatera Utara


48

If Jam = "0" Then
Jam = Left(Text1, 2)
Jam = Right(Jam, 1)
Else
Jam = Left(Text1, 2)
End If
If Jam = 0 Then Jam = 1

'Akuisisi data tiap jam
CHRata2 = TotalCurahHujan / Jam
Label7 = CHRata2
Hour(Jam) = Intensitas
Temp1 = 0
j=j+1
Intensity(j) = Intensitas
Average(j) = CHRata2
Total(j) = TotalCurahHujan
TIMES(j) = Text2


If Intensitas >= 10 Then Label9 = "Hujan Ringan"
If Intensitas >= 500 Then Label9 = "Hujan Sedang"
If Intensitas >= 1000 Then Label9 = "Hujan Lebat"
If Intensitas > 2000 Then Label9 = "Sangat Lebat"

Universitas Sumatera Utara

49

For i = 1 To 24
MSChart1.Column = i
MSChart1.Data = Hour(i)
Next i

End If

End Sub

Universitas Sumatera Utara


50

GAMBAR KESELURUHAN PERALATAN

Gambar instrument

Universitas Sumatera Utara

51

Gambar ketika tidak ada curah hujan

Gambar ketika ada curah hujan

Universitas Sumatera Utara

+5 V

220 nF

C1

R1

10K

10
Vcc
Reset

30 AVCC
31 AGND
32 AREF

0,22 Ohm

SENSOR REED
SWITCH

Jungkitan yang
memiliki magnet

1
2
3
4

ATMega
8535

GND

33
34
35
36
37
38
39
40

+5 V

Vcc

PB0
PB1
PB2
PB3

USB PORT

5 PB4
6 PB5

0,22 Ohm

PA7
PA6
PA5
PA4
PA3
PA2
PA1
PA0

TTL-USB
CONVERTER

PD0 14

5V

1
2

PD1 15

3
4

23 PC1
24 PC2

PD2 16
PD3 17
PD4 18
PD5 19
PD6 20
PD7 21

25 PC3
26 PC4

XTAL1 12

7 PB6
8 PB7

22 PC0

GND

WI-FI

4 MHZ
XTAL2 13
GND

SMARPHONE
ANDROID

11

52

Universitas Sumatera Utara

27 PC5
28 PC6
29 PC7

PERSONAL
COMPUTER

GAMBAR RANGKAIAN PELENGKAP

SENSOR REED
SWITCH

9

53

Universitas Sumatera Utara