Prinsip
kerja dari alat ini yaitu terdapat sensor yang dimasukkan ke PortA.7 pada
minimum system, sensor ini sengaja tidak dijelaskan karena sensor ini bisa
menggunakan berbagai mcam sensor, misal jika ingin monitoriang getaran maka
pakai sensor getaran dengan output tegangan masuk ke PortA.7, begitu juga
dengan sensor yang lainnya, hanya perlu memasukkan tegangan output sensor ke
PortA.7 pada minimum System, dari sensor nilai ADC akan diolah oleh
mikrokontroller ATMega32 sehingga data analog sensor akan diubah menjadi data
digital, dari mikrokontroller data digital dikeluarkan melalui modul ethernet
NM7010A-LF yang mana modul ini akan menghubungkan minimum system dengan
komputer melalui media jaringan TCP-IP. Jika berhasil terkoneksi maka nilai
data sensor akan tertera pada web browser bisa menggunakan mozilla firefox,
google chrome atau internet explorer.
Pada PortB.0 terdapat sebuah
led yang akan dikendalikan oleh komputer, sebenarnya komputer tidaklah
mengendalikan nyala lampu led, melainkan yang mengendalikan adalah
mikrokontroller, komputer hanya berposisi sebagai pemberi perintah kepada
mikrokonroller, dan mikrokontroller yang akan mengeksekusi nyala led tersebut,
untuk lebih jelasnya dapat melihat bagan berikut.
a. Modul
TCP-IP Starter Kit
Modul NM7010A-LF yang dipakai untuk
membuat alat ini yaitu modul TCP-IP Starter Kit dari innovative electronics,
yang mana telah terdapat board pendukung dan modul NM7010A-LF sehingga
memudahkan untuk koneksi ke mikrokonroller dikarenakan telah terdapat port dan
dip switch pada board pendukungnya, Gambar dibawah adalah Gambar tampilan modul
tersebut
b. Minimum System ATMega32
c. Kabel UTP
Kabel UTP berfungsi untuk menghubungkan antara modul
TCP-IP Starter Kit menuju ke komputer, jika pada komputer akan kabel UTP dipasang
pada Port Ethernet. Tipe untuk kabel UTP ada 2 yaitu “Straight” dan “Cross
Over”, pada alat ini dipakai kabel UTP bertipe “Cross Over” dengan konfigurasi
warna seperti gambar berikut
d. Program Bascom AVR
$regfile = "m32def.dat"
$crystal = 4000000
$baud = 19200
$hwstack = 32
$swstack = 32
$framesize = 100
'used constants
Const Sock_stream = $01
Const Sock_dgram = $02
Const Sock_ipl_raw = $03
Const Sock_macl_raw = $04
Const Sel_control = 0
Const Sel_send = 1
Const Sel_recv = 2
'socket status
Const Sock_closed = $00
Const Sock_arp = $01
Const Sock_listen = $02
Const Sock_synsent = $03
Const Sock_synsent_ack = $04
Const Sock_synrecv = $05
Const Sock_established = $06
Const Sock_close_wait = $07
Const Sock_last_ack = $08
Const Sock_fin_wait1 = $09
Const Sock_fin_wait2 = $0a
Const Sock_closing = $0b
Const Sock_time_wait = $0c
Const Sock_reset = $0d
Const Sock_init = $0e
Const Sock_udp = $0f
Const Sock_raw = $10
Enable Interrupts
Config Tcpip = Int0 , Mac = 12.128.12.34.56.78 , Ip =
192.168.1.121 , Submask = 255.255.255.0 , Gateway = 192.168.1.1 , Localport =
1000 , Tx = $55 , Rx = $55 , Twi = &H80 , Clock = 100000
Config Adc = Single , Prescaler = Auto , Reference = Avcc
Dim Shtml As String * 15
Dim Tempw As Word
Dim I As Byte , P As Byte
Dim S As String * 200
Dim Test(2) As String * 10
Config Portb = Output
Portb = 0
Led1 Alias Portb.0
Do
Tempw = Socketstat(0 ,
0)
If Tempw =
Sock_established Then
Tempw = Socketstat(0
, Sel_recv)
If Tempw > 0 Then
Do
Tempw =
Tcpread(0 , S)
P = Split(s ,
Test(1) , " ")
If Test(1) =
"GET" Then
Gosub Webpage
End If
Loop Until S =
""
Tempw =
Tcpwrite(0 , " ")
Gosub Kirim_data
Closesocket 0
End If
Elseif Tempw =
Sock_close_wait Then
Closesocket 0
Elseif Tempw =
Sock_closed Then
I = Getsocket(0 ,
Sock_stream , 80 , 0)
Socketlisten 0
End If
Loop
End
Webpage:
P = Split(s , Test(1) ,
" ")
Shtml = Test(2)
Return
Kirim_data:
Dim Wsize As Word , Icount As Integer
Dim Data_adc As Word
Dim Adc_teg As Single
Dim Teg As String * 5
Dim Y As Byte , X As Byte
Start Adc
Data_adc = Getadc(7)
Adc_teg = Data_adc / 1023
Adc_teg = Adc_teg * 5
Teg = Fusing(adc_teg , "#.###")
If Shtml = "/main.htm" Then
S = "<html><head><title>ADC
Monitor</title><meta http-equiv='refresh' content='1'></head><center><body><p><b>Menampilkan
Data Tegangan<br></b>Tegangan= " + Teg + " volt" +
"</p><p> </p><p> </p></br><a
href = '/Led.htm' > Led ON/OFF
</a></body></center></html>"
Elseif Shtml = "/Led.htm" Then
S = "<html><head><title>LED
ON/OFF</title></head><center><b>ON/OFF
LED</b></br><a href = '/On.htm'>ON</a></br><a
href =
'/Off.htm'>OFF</a></center></body></html>"
Elseif Shtml = "/On.htm" Then
S = "<html><head><title>LED
ON</title></head><center><b>LED
MENYALA</b></br><a href = '/Off.htm'>Led OFF</a></center></body></html>"
Portb.0 = 1
Elseif Shtml = "/Off.htm" Then
S = "<html><head><title>LED
OFF</title></head><center><b>LED
PADAM</b></br><a href = '/On.htm'>Led
On</a></center></body></html>"
Portb.0 = 0
Else
S = "<html><head><title>Error Loading Page</title></head><center><b>Web
yang Anda pilih Salah!!!</b></br><a href = '/main.htm'
>BACK</a></center></body></html>"
End If
Wsize = Len(s)
Tempw = Tcpwrite(0 , S , Wsize)
Shtml = ""
Return
f. Cara
Penggunaan Alat
Langkah pertama untuk menggunakan alat ini yaitu
mengecek apakah modul TCP-IP Starter Kit telah terkoneksi dengan computer atau
belum, dengan cara membuka command prompt dan ketikkan “Ping 192.168.1.121”
maka jika terkoneksi dengan baik akan tampak seperti Gambar berikut
Setelah kedua device terkoneksi , maka langkah
selanjutnya yaitu membuka web browser, pada contoh ini menggunakan web browser
Mozilla Firefox, ketikkan alamat berikut pada address bar
“192.168.1.121/main.htm” maka akan tampak seperti Gambarberikut
Jika tombol Led On/OFF ditekan maka akan tampil
seperti Gambar berikut
Untuk menghidupkan Led maka tekan tombol ON maka
akan masuk ke On.htm seperti Gambar dibawah ini dan jika ditekan tombol OFF maka akan
masuk ke halaman Off.htm yang artinya Led akan padam seperti Gambar berikut
No comments:
Post a Comment